问题标签 [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.

0 投票
12 回答
103690 浏览

sql - 从 CSV 文件生成插入 SQL 语句

我需要将一个 csv 文件导入Firebird,我花了几个小时尝试了一些工具,但没有一个适合我的需要。

主要问题是我一直在尝试的所有工具(如EMS 数据导入Firebird 数据向导)都希望我的 CSV 文件包含我的表所需的所有信息。

我需要在插入语句中编写一些自定义 SQL,例如,我有一个带有城市名称的 CSV 文件,但是由于我的数据库已经在另一个表中包含所有城市(规范化),我需要在插入中编写一个子选择查找城市并写入其 ID 的语句,我还有一个存储过程来读取 GUIDS。

我的插入语句将是这样的:

我该如何处理?

0 投票
6 回答
9236 浏览

hibernate - 使用分区的 postgresql 休眠插入批处理

在分区的 postgresql 表中是否有通过休眠进行批量插入的解决方案?目前我遇到这样的错误......

我找到了这个链接http://lists.jboss.org/pipermail/hibernate-dev/2007-October/002771.html但我在网上找不到任何地方解决这个问题或如何解决它

0 投票
4 回答
54131 浏览

php - 使用php,如何插入文本而不覆盖文本文件的开头

我有:

但它会覆盖文件的开头。我如何让它插入?

0 投票
3 回答
2788 浏览

insert - 对于 std::map,如果必须调整容器大小并且内存不可用,插入将如何表现?

对于 std::map,如果必须调整容器大小并且内存不可用,插入将如何表现?

0 投票
23 回答
793851 浏览

sql - SQL Server 上的 INSERT OR UPDATE 解决方案

假设表结构为MyTable(KEY, datafield1, datafield2...)

通常我想更新现有记录,或者如果它不存在则插入一条新记录。

本质上:

写这个的最佳执行方式是什么?

0 投票
12 回答
2683 浏览

sql-server-2005 - 如何将慢速参数化插入更改为快速批量复制(甚至从内存中)

我的代码中有这样的东西(.Net 2.0,MS SQL)

使用cmdInsert.ExecuteNonQuery()注释掉此代码将在 2 秒内执行。使用 SQL 执行需要 1m 20 秒。大约有 50 万条记录。表之前是空的。类似功能的 SSIS 数据流任务大约需要 20 秒。

  • 批量插入不是一种选择(见下文)。我在这次导入期间做了一些花哨的事情。
  • 我的测试机器是带有 2 GB RAM 的 Core 2 Duo。
  • 在任务管理器中查看 CPU 时未完全处理。IO 似乎也没有被充分利用。
  • Schema 简单得像地狱:一张以 AutoInt 作为主索引且少于 10 个整数、小整数和字符(10)的表。

在这里得到一些答案后,我发现可以从内存中执行批量复制!我拒绝使用批量复制,因为我认为必须从文件中完成...

现在我使用它,它需要大约 20 秒(如 SSIS 任务)

0 投票
6 回答
154966 浏览

sql - Oracle 通过 Select 从多个表中插入,其中一个表可能没有一行

我有许多代码值表,其中包含一个代码和一个带有 Long id 的描述。

我现在想为引用许多代码的帐户类型创建一个条目,所以我有这样的东西:

如果为它们各自的代码找到匹配项,这将从 tax_status 和收件人表中检索适当的值。不幸的是,recipient_code 可以为空,因此 ? 替换值可以为空。当然,隐式连接不会返回一行,因此不会将一行插入到我的表中。

我试过在 ? 在 r.recipient_id 上。

我试图在 r.recipient_code = 上强制外部连接?通过添加 (+),但它不是显式连接,因此 Oracle 仍然没有添加另一行。

有人知道这样做的方法吗?

我显然可以修改语句,以便我在外部查找接收者 ID,并有一个 ? 而不是 r.recipient_id,并且根本不从收件人表中选择,但我更愿意在 1 个 SQL 语句中完成所有这些操作。

0 投票
3 回答
21003 浏览

sql-server - 在 SQL Server 中,我可以将多个节点从表中插入 XML 吗?

我想根据表中的数据在存储过程中生成一些 XML。

以下插入允许我添加许多节点,但它们必须进行硬编码或使用变量(sql:variable):

所以我可以遍历表中的每条记录,将我需要的值放入变量中并执行上面的语句。

但是有没有一种方法可以通过结合 select 语句并避免循环来做到这一点?

编辑我以前SELECT FOR XML 做过类似的事情,但是在处理来自多个表的数据层次结构时,我总是觉得很难阅读。modify我希望使用生成的 XML 更明确、更可控的地方会有一些东西。

0 投票
4 回答
6620 浏览

mysql - 关于主键和插入的简单mysql问题

在mysql中,当它自动递增时,如何获取用于插入操作的主键。

基本上,我希望在语句完成时返回新的自动增量值。

谢谢!

0 投票
5 回答
758 浏览

insert - 双击双插入分辨率?

一名团队成员在使用旧的内部系统时遇到了问题,其中用户双击网页上的链接可能会导致从浏览器发送两个请求,从而导致在比赛中同一记录的两个数据库插入健康)状况; 最后一个运行失败,主键违规。已经提出并讨论了几种解决方案和技巧:

  1. 在网页上使用 Javascript 通过禁用第一次点击时的链接来减少第二次点击。这是减少问题发生的一种快速简便的方法,但不能完全消除它。

  2. 将服务器端的请求执行包装在事务中。由于相关表上的服务器负载和锁定级别,这被认为过于昂贵的操作。

  3. 捕获失败的插入引发的主键异常,将其识别为这样,然后吃掉它。这具有以下缺点:(a) 供应商锁定,必须知道特定于数据库的异常的细微差别,以及 (b) 可能不记录/处理合法的数据库故障。

  4. #3 的扩展,通过在插入失败时尝试更新记录并检查更新结果以确保它返回 1 条受影响的记录。

是否还有其他未考虑的选项?被忽视的选项是否有优缺点?万恶之中,孰轻孰重?