问题标签 [batch-insert]
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.
java - 使用 JPA/EJB3 进行批量插入
JPA/EJB3 框架是否提供标准方式来执行批量插入操作...?我们使用hibernate作为持久化框架,所以我可以回退到Hibernate Session并使用组合session.save()/session.flush()实现批量插入。但是想知道EJB3是否支持这个......
php - 批量插入和准备好的查询错误
好的,所以我需要使用 MySQL 查询的结果填充 MS Access 数据库表。这一点都不难。我已将程序写入将模板 .mdb 文件复制到临时名称并通过 odbc 打开它的位置。到目前为止没有问题。
我注意到 Access 不支持批量插入 ( VALUES (foo, bar), (second, query), (third query)
)。所以这意味着我需要每行执行一个查询(可能有数十万行)。初始性能测试显示 Access 的插入速率约为 900 次/秒。对于我们最大的数据集,这可能意味着几分钟的执行时间(这不是世界末日,但显然越快越好)。
所以,我尝试测试一个准备好的语句。但我不断收到错误(Warning: odbc_execute() [function.odbc-execute]: SQL error: [Microsoft][ODBC Microsoft Access Driver]COUNT field incorrect , SQL state 07001 in SQLExecute in D:\....php on line 30
)。
这是我正在使用的代码(第 30 行是odbc_execute
):
所以我的问题是两个方面。首先,是否知道为什么会出现该错误(我已经检查过,数组中的数字与与参数?
标记数量匹配的字段列表匹配)?其次,我应该为此烦恼还是只使用直接的 INSERT 语句?就像我说的,时间并不重要,但如果可能的话,我希望尽可能缩短时间(再说一次,我可能会受到磁盘吞吐量的限制,因为 900 次操作/秒已经很高了).. .
谢谢
activerecord - 如何在codeigniter活动记录中使用select插入记录
我想使用 CodeIgniter Active Record 类实现一个 sql 查询。查询看起来像这样..
在不使用 $this->db->query 方法的情况下,这在 CodeIgniter 中是否可行?
解决方案:
问候
mysql - Codeigniter 在 SQL 中插入多行
我对 Codeigniter 很陌生。我有一个看起来像这样的表格。
可能有 0 到 n 行,通常是 5 到 10 行。如何在 SQL 中插入它们?这可以使用 Codeigniter 还是我应该使用本机 PHP 脚本?
我这样做了。有用。但这个解决方案似乎并不优雅。
kevtrout 的答案看起来更好,但目前正在引发很多错误。
有没有办法一次性插入所有数据?
sql - 忽略 Postgresql 批量插入错误
假设这个简单的 SQL 查询:
可以说val3
是无效的值col1
。(val1,val2)
这将导致 psql 中止整个 INSERT 命令——它也不会插入(val5,val6)
。
是否可以让 postgresql 忽略此错误,因此它不会插入(val3,val4)
对但仍会继续执行(val1,val2)
and (val5,val6)
?
我每天都从我的合作伙伴那里获得文本文件中的数据库转储(无法更改),我用它来制作它的副本。有时他巨大的 INSERT 查询会导致如下错误:
...这使得整个 30000+ 值没有插入到表中,因为其中一个值是错误的。
sql - BLToolKit:如何插入对象列表?
BLToolKit(http://bltoolkit.net)是否可以为对象列表(批量插入)创建一组记录?
如果是,这怎么可能?
非常感谢!
java - Java:使用 PreparedStatement 将多行插入 MySQL
我想使用 Java 一次将多行插入到 MySQL 表中。行数是动态的。过去我在做...
我想优化它以使用 MySQL 支持的语法:
但是PreparedStatement
我不知道有什么方法可以做到这一点,因为我事先不知道array
将包含多少元素。如果 a 不可能PreparedStatement
,我还能怎么做(并且仍然转义数组中的值)?
sql-server - 通过组插入减少 sql server 开销
我有一个爬虫,可以跨网页获取文档。当我收到一个页面时,我立即在 sql server 中插入内容(每秒 20 次插入)。这会减慢我的应用程序和服务器响应速度。我想我可以在一个组中收集 20 个项目,然后使用具有 (20*fieldCount) 的存储过程将其插入。
这会稍微减少 sql server 开销,但我不知道将 200 参数传递给 sql server 存储过程不会产生另一个开销。请帮我。有没有更好的方法来最小化这种频繁插入的开销?
java - Neo4j中批量插入期间的数字索引
我正在将节点和关系批量插入到 Neo4j 图形数据库中。一切正常,包括多个属性的索引([String] name, [int] id)
。但是,当我尝试按范围查询属性“id”的索引时,它不会返回任何结果。
问题,正如我从非批处理示例中得出的那样,是我不能提供数字ValueContext
给BatchInserterIndex
这样的:
在批量插入期间,我没有找到任何关于数字索引的文档。
查询代码如下:
是否可以在批量插入操作中添加数字索引,以便我可以按范围查询值?
谢谢。
编辑
我做错了什么是我试图将相同的属性映射传递给createNode()
and index.add()
。前者崩溃了,因为它不需要ValueContext
也不理解它。因此,请务必将不同的属性映射传递给这些方法,并ValueContext
在用于 的方法中包含 -ed 数值index.add
:
sql-server - T-SQL,在子查询中插入 MAX()+1 不会增加,替代方案?
我有一个查询,我需要将行“批量”插入到具有没有标识的主键的表中。
(简化示例 - 请不要评论可能的并发问题:-))
问题是它不会增加“每个”处理行的 PK,并且我得到主键违规。
我知道如何使用游标/while 循环来做到这一点,但我想避免这种情况,并以基于集合的方式解决它,如果这可能的话?
(运行 SQL Server 2008 标准版)