独立于数据库引擎的 SqlBulkCopy 模拟

发布于 2024-08-21 14:51:17 字数 92 浏览 3 评论 0原文

加载大量数据的最佳独立于数据库引擎的方式是什么?

当我使用 SQL Server 时,我使用 SqlBulkCopy 但想从 SQL Server 中解开

What is the best database engine independent way to load a huge amount of data.

While I'm using SQL Server I use SqlBulkCopy but want to untie from SQL Server

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

沉溺在你眼里的海 2024-08-28 14:51:17

没有独立于数据库引擎的方法来执行此操作。
每个数据库服务器都有自己的方式(例如 Sybase 的 bcp)。

可能有一些第三方产品可以为您完成这项工作,但它只是底层特定于服务器的方法的包装(如果这就是您正在寻找的,您可能想澄清您的问题)。

注意:按照 Mark 的建议执行一堆 INSERT 绝对不一样,因为由于被记录(与 bcp 不同),INSERT 比本机批量插入慢得多。

There is no database engine independent way of doing this.
Each DB server has its own way (e.g. bcp for Sybase).

There may be some 3rd party product which can do the work for you but it will merely be a wrapper around server-specific methods underneath (If that's what you're looking for, you may want to clarify your question).

NOTE: doing a bunch of INSERTs as Mark suggested is definitely not the same, since INSERTs are MUCH slower than native bulk inserts due to being logged (unlike bcp).

顾忌 2024-08-28 14:51:17

独立于数据库的批量插入?不可能。

我能想到的最接近的是创建一个插入脚本,其中包含如下行:

INSERT INTO TableName (...) VALUES (...);

它会很好地压缩,因此您可能需要对其进行 gzip。

不过,您可能最好坚持使用数据库特定的命令。 “数据库独立”往往只是“慢”的同义词。

Database independent bulk insert? Not possible.

The closest I can think of is to create an insert script with lines like this:

INSERT INTO TableName (...) VALUES (...);

It will compress well, so you might want to gzip it.

You're probably better off sticking with the database specific commands though. "Database independent" is often just a synonym for "slow".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文