我正在使用链接服务器和打开查询将数据从DB2迁移到SQL Server,如下所示:
--SET STATISTICS IO on
-- Number of records are: 18176484
select * INTO [DBName].[DBO].Table1
FROM OPENQUERY(DB2,
'Select * From OPERATIONS.Table1')
此查询需要插入9小时17分钟(记录数18176484)。
还有其他方法可以更快地插入记录吗?我可以使用“OpenRowSet”功能进行批量插入吗?或SSIS包将提高性能,并将花费更少的时间?请帮忙
答案 0 :(得分:0)
您可能希望将数据导出到csv文件,例如StackOverflow上的此答案:
EXPORT TO result.csv OF DEL MODIFIED BY NOCHARDEL SELECT col1, col2, coln FROM testtable;
(Exporting result of select statement to CSV format in DB2)
一旦成为CSV文件,您就可以使用BCP或SSIS将其导入SQL Server,这两者都非常快,特别是如果您在目标表上使用文件锁定。