问题标签 [bulkinsert]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3486 浏览

oracle - 直接路径插入是在 Oracle 中进行批量插入的好方法吗?

我们正在尝试找出使用 Oracle (10gR2) 处理 BULK INSERT 的最佳方法,我发现这可能是一个相当复杂的主题。我发现的一种方法涉及使用 Append 优化器提示:

我的理解是,这将告诉 Oracle 忽略索引并将结果放在表的末尾。然后,我要做的就是重建索引:

这比尝试将 SQL*Loader 作为外部进程启动或执行一些 pl/SQL 更容易。这似乎太容易了。有什么我想念的吗?如果我采取这种方法,有什么事情会反过来咬我吗?

0 投票
1 回答
4781 浏览

linq - Visual Studio C# Linq 批量插入/更新

我最近使用 Linq 开发了一个 C# 应用程序。我从外部数据库获取需要处理的配置文件列表,有些是新的,有些已经在数据库中,需要更新。我今天要做的是检查配置文件列表并检查每个配置文件是否存在我更新否则我插入 - 这个解决方案工作正常。

我确信有一种方法可以使用批量插入/更新类似 UPDATE ON DUPLICATE 的方法,这样我可以节省时间,因为我得到的文件很大,而且批量插入/更新具有更好的性能。我想避免我现在使用的迭代。

insertall 不适用于已存储的行,我需要更新和插入的组合

这是我的代码,非常感谢您的帮助。

0 投票
4 回答
9241 浏览

hibernate - 使用 Spring/Hibernate 批量插入

我在我的应用程序中使用混合 Spring/Hibernate(不是原创的)。对于给定的功能,我必须将 CSV 文件的内容导入到我的 Oracle DB 表中。现在,我只是创建对象,我做

在他们每个人上(我需要检索他们新分配的 ID)

然后事务发生在方法的末尾,使用 Spring 事务 API。

一切正常,除了性能,这对于大约 5000 个对象是正确的,但对于 100 000 个对象不正确......

所以我寻找加速这些东西的想法。我听说过 Hibernate 的批量插入,但找不到任何可靠的参考。谁能给我一些想法以更好地执行此导入?

0 投票
3 回答
1576 浏览

sql-server - 将行号/行号添加到文本文件的快速方法

我有一个文件,它有大约 12 万行,每行如下所示:

0701648016480002020000002030300000200907242058CRLF

我想要完成的是在数据之前添加一个行号,这些数字应该有一个固定的长度。

这背后的想法是能够将此文件批量插入到 SQLServer 表中,然后对其执行某些操作,这些操作要求每一行都有一个唯一的标识符。我已经尝试在数据库端执行此操作,但我无法获得良好的性能(至少在 4 英尺以下,在 1 英尺以下是理想的)。

现在我正在尝试一个看起来像这样的python解决方案。

我不知道这是否可行,但在我继续尝试新事物之前,它会帮助我了解它的性能和副作用,我还想用 C 来做,所以我有更好的内存控制。

用低级语言做这件事会有帮助吗?有谁知道更好的方法来做到这一点,我很确定它已经完成了,但我找不到任何东西。

谢谢

0 投票
2 回答
373 浏览

php - 我应该使用插入选择还是只使用插入循环?

我使用以下答案提取了用户名列表:

如果我的查询中有太多的 OR 运算符,如何优化 mysql 查询?

现在我有另一个问题。我有一个仅由 2 列组成的朋友表,请求者和好友都形成了一个复合主键。

现在假设我有一个给定用户使用上述 SO 问题的 facebook 朋友数组。

我如何在我的网络应用程序中自动让他们成为朋友?

这意味着如果我有一个名为“usera”的用户有 5 个真正的朋友。我需要执行 10 个插入语句。

例如:friendA, usera 和 usera,friendA 以便将friendA 反映为usera 的朋友。

我知道插入选择是有效的。但不幸的是,这些朋友的用户名列表是通过使用 IN 子句的 PHP 值数组获得的,正如我上述问题中其他 SO 成员所建议的那样。

所以我该怎么做?

我是不是该

a) 遍历名称并为每个步骤执行 2 个插入语句?

b)使用插入选择?但如何做到这一点呢?

我的数据库是这样设计的:

1 个表名为 users 的用户名和 fb_uid,其中用户名是主键,fb_uid 可以为空。

一张名为friends的表,其中一列名为requestor,另一列名为buddy。两列形成一个复合键。

当您在朋友表中有以下数据时,我的网络应用程序中的 2 个人(usera,userb)之间建立了友谊:(usera,userb)和(userb,usera)。

谢谢你。

0 投票
2 回答
9119 浏览

php - 批量插入 mysql - 我可以使用忽略子句吗?有没有限制。批量插入的记录?

我有一堆要插入的数据,我决定对 mysql 使用批量插入。

插入朋友(请求者,好友)值(value1,value2),(value2,value1),(value3,value4),(value4,value3),...

我想知道以下内容:

1)我可以使用忽略吗?例如

将忽略插入朋友(请求者,好友)值(value1,value2),(value2,value1),(value3,value4),(value4,value3),...

如果我有重复怎么办?它会 a) 不插入所有内容吗?b)在重复记录之前插入记录,然后停止处理数据?c) 忽略重复的并继续其余的?

2)有没有限制。我可以用于这样的批量插入的记录?

谢谢你。

0 投票
1 回答
2459 浏览

sql-server - SQL Server Express 2005 中的批量插入不起作用

我在将数据批量插入我的 SQL Express 2005 数据库时遇到问题。

我正在使用以下代码:

我收到以下错误:

我要导入的数据文件可以位于此处

任何帮助都得到了重视。

更新 1 这是我正在使用的数据示例:

更新 2

我现在设法导入它们。我所做的只是将文本复制到一个新文件中,并将其保存为 test.txt。我不知道为什么会这样。这可能是因为文件编码。该文件采用 UTF8 编码。

0 投票
1 回答
522 浏览

oracle - 为什么要使用 SQL*Loader 常规加载路径?

我对 SQL*Loader 的常规路径的理解是,它只是简单地生成 INSERT 语句并将它们发送到数据库。使用它而不是仅以编程方式生成 SQL 语句并针对数据库执行它们是否有任何性能优势?

0 投票
5 回答
2571 浏览

c# - 批量插入,asp.net

我需要获取与成员对应的 ID 号列表。它们可以在任何给定时间处理 10 到 10,000 个。我收集数据、解析数据并将其加载到 DataTable 或任何东西(C#)中没有问题,但我想在数据库中执行一些操作。将所有这些数据插入表中的最佳方法是什么?

我很确定我不想为每个语句运行一个并插入 10,000 次。

0 投票
1 回答
137 浏览

oracle - 关于在 SQL*Loader 上使用不可移植的数据类型,我需要了解什么?

我阅读了SQL*Loader参考手册中的部分,这让我有点不知所措。我们的客户都在运行 x86,所以我假设我们不必担心字节顺序。但是,我们确实有一些客户在 32 位上运行,而另一些客户在 64 位操作系统上运行。我到底需要做什么来确保我不会因此而遇到任何问题?