[英]SQL Server Bulk Insert Failure
考虑表:
CREATE TABLE [dbo].[inputdata](
[Name] [varchar](150) NULL,
[AddressStreet] [varchar](150) NULL,
[AddressStreet2] [varchar](150) NULL,
[City] [varchar](150) NULL,
[State] [varchar](2) NULL,
[Zip] [varchar](5) NULL,
[Phone] [varchar](10) NULL,
[Campus] [varchar](50) NULL,
[Access] [varchar](50) NULL,
[Type] [varchar](50) NULL,
[Degree] [varchar](50) NULL,
[Unknown1] [varchar](50) NULL,
[Unknown2] [varchar](50) NULL,
[IdentType] [varchar](50) NULL,
[Unknown3] [varchar](50) NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
和插入脚本:
SET ANSI_DEFAULTS ON
BULK INSERT dbo.inputdata
FROM 'C:\inputdata.csv'
WITH (
FIELDTERMINATOR = ','
,ROWTERMINATOR='\n'
)
为什么会显示以下错误:
批量加载失败。 数据文件中第1行第15列的列太长。请验证是否正确指定了字段终止符和行终止符。
DataRow 1(我为此问题手动添加了\\ n,文件的每一行中都存在该字符):
1CRESCENT CITY BARTENDING INSTITUTE,209 N. BROAD AVE., ,NEW ORLEANS,LA,70119,.,Regular,Private,1-2 years,Diploma, , ,IPEDSUNIT,158617,\n
行尾有一个额外的场终结器。 额外的字段终止符可能导致其引发一般错误。
我希望这有帮助!
确保使用大容量插入文件加载包含奇怪项目(例如,额外的字段终止符或文本限定字段)的文件的一种方法是使用格式文件。 下面的链接说明了如何创建这些文件之一。
http://technet.microsoft.com/zh-CN/library/ms191479(v=sql.105).aspx
我试图重新创建您的问题,并且一切正常。 直到我尝试将文件转换为换行符不同的UNIX格式。 这给了我以下信息:
Bulk load data conversion error (truncation) for row 1, column 15 (Unknown3).
尝试使用十六进制编辑器查看文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.