如果我在重复性问题上激怒论坛,请道歉。无法在论坛中找到合适的解决方案,因此可以发布。
我需要快速将129991763行提取到游标或临时表或临时表中,然后将它们处理到另一个表中。而且这张目的地表也很大。
目前我正在使用INSERT
使用SELECT
语句(SELECT
嵌套4个级别)使用选项(FAST 1000),MAXDOP 1,RECOMPILE ......等提示。
该程序耗费大量时间并且没有显示任何结果或根本没有完成。
以前我使用过相同提示的游标;但因为它也跑了22个多小时;我使用INSERT
切换到SELECT
。
从字面上看,我需要停止上述两种方法的执行。
说实话,我是SQL Server数据库的初学者。
即使根据标准专门过滤掉SELECT
中的记录;仍然需要打破4或5个块,这些块也需要超过4-5个小时才能完成。
请帮忙。
由于 Pradyumna
答案 0 :(得分:0)
过去我使用BULK INSERT取得了一定的成功,但我怀疑将其分解成块并删除索引的建议仍然是明智之举。你可以在这里找到一些细节
https://msdn.microsoft.com/en-GB/library/ms188365.aspx
希望它有所帮助,祝你好运。
答案 1 :(得分:0)
道歉,您可能最好使用SSIS包将其拉过来。有了这个,您还可以根据需要转换数据。我仍然建议在可能的情况下将数据插入表中。由于使用了GUI,你需要进行一些阅读但很难在这里解释。
祝你好运