【发布时间】:2018-10-13 15:30:42
【问题描述】:
我在尝试批量插入时遇到错误:
BULK INSERT #tbl_InterCompanyUploadDetail_Staging
FROM '\\SVRP03546008461D\QA\UploadTemplatewithvalidation.xlsx'
WITH (FIRSTROW = 6, FIELDTERMINATOR ='\t', ROWTERMINATOR ='\\n' )
我得到的错误是:
第 6 行第 2 列(Oracle 公司代码)的批量加载数据转换错误(截断)。
Excel 中的列数据为 470,数据库中的列数据为 varchar (10)。 那么错误的原因可能是什么。
【问题讨论】:
-
正如错误消息所说,截断是错误的原因。推测数据中的列有10多个字符。
-
不,我只有十行,每行有 3 个字符。这就是我感到困惑的原因。
-
我不知道
BULK INSERT可以插入.xlsx文件。除非这是一个新功能....我认为这是不可能的。用记事本打开这个文件是什么样子的? -
文档解释得很好:Import data from Excel to SQL Server。
BULK INSERT仅支持纯文本文件,无法从 Excel 文件中读取。 -
拼写出来:您首先需要将 xlsx 文件导出为文本文件(例如 CSV),然后导入文本文件。
标签: sql sql-server excel tsql bulkinsert