Sql server SSIS:将数据从Excel源加载到OLE DB目标时发生行故障
这方面我还不太熟悉。我正在尝试使用SSIS包将Excel文件(从SQL Server表复制并保存)导入SQL Server 以下是我创建excel文件的方式:Sql server SSIS:将数据从Excel源加载到OLE DB目标时发生行故障,sql-server,ssis,Sql Server,Ssis,这方面我还不太熟悉。我正在尝试使用SSIS包将Excel文件(从SQL Server表复制并保存)导入SQL Server 以下是我创建excel文件的方式: CREATE TABLE #drivers_source ( FirstName NVARCHAR(255) NOT NULL, LastName NVARCHAR(255) NOT NULL, CarMake NVARCHAR(255) NOT NULL, License NVARCHAR(255
CREATE TABLE #drivers_source
(
FirstName NVARCHAR(255) NOT NULL,
LastName NVARCHAR(255) NOT NULL,
CarMake NVARCHAR(255) NOT NULL,
License NVARCHAR(255) NOT NULL,
State NVARCHAR(255) NOT NULL
)
INSERT INTO #drivers_source
VALUES ('Amy', 'Ashley', 'Toyota', '15629686', 'New York'),
('Bob', 'Burns', 'Ford', '25448665', 'Washington'),
('Cindy', 'Cody', 'Honda','370659CA', 'California'),
('Dave', 'Doe', 'Audi','45988718', 'Texas');
SELECT *
FROM #drivers_source;
我将#drivers_source
中的数据(带标题)复制到Excel文件并保存
以下是我创建目标表的方式:
CREATE TABLE dbo.drivers_destination
(
FirstName NVARCHAR(255) NOT NULL,
LastName NVARCHAR(255) NOT NULL,
CarMake NVARCHAR(255) NOT NULL,
License NVARCHAR(255) NOT NULL,
State NVARCHAR(255) NOT NULL
);
我创建了一个带有Excel源和OLEDB目标的SSIS包,运行该包,发现仅成功插入了前两行。我花了几个小时试图找出原因,但仍然没有任何线索
如果您想知道为什么会发生此错误,以及如何解决此问题(而不影响源数据),我们将不胜感激 检查Excel源组件的配置。听起来好像“类型猜测”已配置为根据前两行猜测列类型-默认的
TypeGuessRows
设置通常为8
在此情况下,根据前两个值<代码> 15629686 和<代码> 25448665 ,考虑<代码>许可证>代码>列,当试图将<代码> 37065 9Ca < /C> >转换为int</p>时,获得转换错误。
在Excel源代码的输出列中确认
License
列配置为使用数据类型String[DT_STR]
或Unicode String[DT_WSTR]
而不是四字节有符号整数[DT_I4]
检查Excel源组件的配置。听起来好像“类型猜测”已配置为根据前两行猜测列类型-默认的TypeGuessRows
设置通常为8
在此情况下,根据前两个值<代码> 15629686 和<代码> 25448665 ,考虑<代码>许可证>代码>列,当试图将<代码> 37065 9Ca < /C> >转换为int</p>时,获得转换错误。
在Excel源代码的输出列中确认
License
列配置为使用数据类型String[DT_STR]
或Unicode String[DT_WSTR]
而不是四字节有符号整数[DT_I4]之类的内容
运行此脚本时是否收到任何错误或消息帖子运行此脚本时是否收到任何错误或消息帖子