Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL Server 2008中从Excel批量上载_Sql_Sql Server_Excel_Sql Server 2008 - Fatal编程技术网

在SQL Server 2008中从Excel批量上载

在SQL Server 2008中从Excel批量上载,sql,sql-server,excel,sql-server-2008,Sql,Sql Server,Excel,Sql Server 2008,我正在尝试使用以下查询从Excel文件批量上载: BULK INSERT TempRevenueForecast FROM 'E:\RevenueTracker\Demo\UserTemplate.xls' WITH (FORMATFILE = 'E:\RevenueTracker\Demo\TRF.FMT'); GO 但是,我得到了这个错误: 第1行第2列的大容量加载数据转换错误(截断) 如何解决此问题?如果在SSMS中以编辑模式(右键单击表格-编辑前200行)打开TempR

我正在尝试使用以下查询从Excel文件批量上载:

BULK INSERT TempRevenueForecast 
   FROM 'E:\RevenueTracker\Demo\UserTemplate.xls' 
   WITH (FORMATFILE = 'E:\RevenueTracker\Demo\TRF.FMT');
GO
但是,我得到了这个错误:

第1行第2列的大容量加载数据转换错误(截断)


如何解决此问题?

如果在SSMS中以编辑模式(右键单击表格-编辑前200行)打开TempRevenueForecast表,则只需复制粘贴excel数据即可

这是SSMS的一个非常方便的功能

否则,请使用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;
要使其工作,必须安装Microsoft Access数据库引擎(ACE)组件。




批量插入将不会加载Excel文件。您要么需要先保存为文本文件,要么使用OPENROWSET,就像这些示例(我搜索时在Google中出现的第一个示例)