[英]Bulk upload from Excel in SQL Server 2008
I'm trying to bulk upload from an Excel file using the following query: 我正在尝试使用以下查询从Excel文件批量上传:
BULK INSERT TempRevenueForecast
FROM 'E:\RevenueTracker\Demo\UserTemplate.xls'
WITH (FORMATFILE = 'E:\RevenueTracker\Demo\TRF.FMT');
GO
But, I'm getting this error: 但是,我收到此错误:
Bulk load data conversion error (truncation) for row 1, column 2 第1列,第2列的批量加载数据转换错误(截断)
How can I solve it? 我该如何解决?
If you open the table TempRevenueForecast in edit mode (right-click-table - edit top 200 rows) in SSMS, you can just copy-paste the excel data over. 如果在SSMS中以编辑模式打开表TempRevenueForecast(右键单击表-编辑前200行),则只需将Excel数据复制粘贴到上面。
That's a very handy feature of SSMS. 这是SSMS的一个非常方便的功能。
Otherwise, use OpenRowSet: 否则,请使用OpenRowSet:
INSERT INTO [TempRevenueForecast ] ([Column1], [Column2], [Column3], [Column4])
SELECT A.[Column1], A.[Column2], A.[Column3], A.[Column4]
FROM OPENROWSET
('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=E:\RevenueTracker\Demo\UserTemplate.xls;HDR=YES', 'select * from [Sheet1$]') AS A;
For that to work, the Microsoft Access Database Engine (ACE) components must be installed. 为此,必须安装Microsoft Access数据库引擎(ACE)组件。
http://www.microsoft.com/en-us/download/details.aspx?id=23734 http://www.microsoft.com/zh-cn/download/details.aspx?id=23734
or 要么
http://www.microsoft.com/en-us/download/details.aspx?id=13255 http://www.microsoft.com/zh-cn/download/details.aspx?id=13255
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.