我正在用 C# 编写一个程序,用于从一个数据库导出 SQL Server 数据并将其导入另一个数据库。由于这两个服务器没有连接,我需要选择一种方法,例如 bcp。
- 这两者之间有什么区别?一个比另一个更有效率吗?在什么情况下?
- 各自的已知限制/兼容性问题是什么?
- 还有哪些其他方法可以将数据从 SQL Server 导出到文件并从中导入?
- 我能否在通过命令行开关创建这些文件的同时启用压缩,而不是事后压缩它们?
- 请包括您认为在做出此决定时重要的任何其他方面。
提前致谢。
最佳答案
不涉及 BCP,但我确实写了一个 blog post比较两种将数据批量加载到 SQL Server 的方法 - 比较 SqlBulkCopy针对通过 SqlDataAdapter 的批量插入。
SqlBulkCopy 值得一试 - 您使用的过程类型是查询数据库 1 并检索 SqlDataReader。将该 SqlDataReader 传递给 SqlBulkCopy 以将该数据保存到数据库 2。
关于c# - SQL 服务器 : BCP vs SQLCMD - what is more efficient?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3994997/