我正在尝试在 2 个 MSSQL 2008 数据库之间移动多个数据表,我为一个相当大的表生成了数据插入脚本(大约 3.5M 行)。该脚本大约有 3GB。当我尝试使用 SSMS 打开脚本时,出现以下错误:
有没有办法让 SSMS 让我打开这个脚本或者将数据导出为其他更容易导入的格式。
答案1
您的第一个大问题是您试图将 3GB 的数据作为脚本加载到 SSMS 中。我不确定 SSMS 有多聪明,但我敢打赌它试图将整个文件加载到内存中,这将导致它崩溃,因为它是一个 32 位应用程序 - 32 位应用程序的最大地址空间为 4GB,其中 2GB 可供进程使用。
最好使用批量导入/导出工具来完成这项工作,它们更适合移动大量数据:
您可能也不想(我怀疑)将其作为事务插入来运行:
答案2
您可以尝试从命令行使用 sqlcmd 运行该脚本。