2012-03-14 51 views
1

我正在将我旧的招聘数据库中的数据导出到我的新招聘数据库中,以节省付出的勒索费用。我几乎所有在那里使用BULK_INSERT(没有完整的SSIS与SQL Server 2008 Express和导入/导出向导没有一个KEEP NULL选项,这对我很重要,所以我留下BULK_INSERT)。将BULK_INSERTING .csv保存为SQL Server 2008(Express)时的回车代码

无论如何,这一切都看起来不错,我的.csv和BULK_INSERT栏是一个讨厌的专栏。在一个表(客户端)到我导入目标列是: -

Client_Notes (ntext, null) 

我使用了插入的语法如下: -

BEGIN TRAN SAJ 
BULK INSERT Client 
FROM 'c:\MAIN SHARE\IMPORT TEST.csv' 
WITH 
(
FIELDTERMINATOR = ',', 
ROWTERMINATOR = '\n', 
FIRSTROW = 2, 
KEEPNULLS 
) 
GO 
-- COMMIT TRAN SAJ 
--ROLLBACK TRAN SAJ 

现在数据在我的.csv本专栏将是这种性质的: -

abc 
123 
45 
67891011121314 

当它被引进它看起来像这样: -

abc1234567891011121314 

并且还有有趣的字符,其中回车是和它被截断的地方。导入时有没有办法让格式保持在这一列?我听说不得不使用'格式文件',但是在这里找不到我需要做的细节。

帮助。

回答

0

试试这个:

FIELDTERMINATOR = ';', 

如果好好尝试工作,用记事本/用UltraEdit打开该.csv文件,并张贴了你的问题的内容。

+0

感谢您的回复。不幸的是,这并没有奏效,当我用ROWTERMINATOR ='\ r \ n'运行时,它只是回来了: - '0 rows affected'。 – 2012-03-14 17:16:29

+0

@SajSami检查我更新的答案。 – 2012-03-14 17:43:55

+0

我应该尝试使用ROWTERMINATOR ='\ r \ n',还是使用ROWTERMINATOR ='\ n',? FIELDTERMINATOR =';'? – 2012-03-15 10:26:56