REPLACE INTO 查询是好的做法吗?

2024-03-27

我需要一个 SQL 查询来更新或创建数据库条目(如果某个客户尚不存在)。我在网上找到了目前的解决方案:

command.CommandText = "REPLACE INTO [Resource_Tracer].[dbo].[Customer](CustomerName, CustomerID) VALUES (@CustomerName, @CustomerID)"

因为我没有看到它被大量使用,而且实际上以前从未听说过它,所以这真的是我想要的解决方案,还是我应该手动执行此操作?


Both REPLACE INTOON DUPLICATE KEY建议的替代方案是来自 MySQL 变体的非标准 SQL。因此,您是否使用它取决于 a) 您是否使用 MySQl 以及 b) 您是否希望与该变体绑定。

ANSI SQL 定义了一个MERGE更标准的语法(如果它在您的平台上实现)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

REPLACE INTO 查询是好的做法吗? 的相关文章

  • 对一列进行唯一约束,排除其他列中具有相同值的行

    我想向列添加唯一键value但我必须忽略列中具有相同值的行value and header id 例如 考虑这个表 id header id value 1 1 a 2 1 a 3 2 a 因此 第 1 行和第 2 行指向同一个对象 并且唯
  • 从数字字符串生成行

    我有一个 Oracle 18c 表 其中包含如下字符串 select 0 5 0 10 10 11 18 30 0 33 54 50 10 33 54 60 10 43 54 as multipart lines There are mor
  • Vba访问错误91

    我尝试运行这段代码 Public Sub Production UpdateStatus ByVal lngProductionId As Long ByVal NewProductionStatus As eProductionStatu
  • 谁能用适当的例子向我解释 1NF、2NF、3NF、BCNF 规则?

    这是一个常见的面试问题 我遇到过一次面试 面试官给了我一张桌子 让我告诉他这张桌子是哪种范式 如果它在 NF中 那么将其归一化到下一个NF 我总是对这些正常形式的数据库感到困惑 谁能向我解释这些范式 并举出每个 NF 如何建模到表中的正确示
  • 获取表中两组不同行的计数,然后将它们分开

    我对 MySQL 很陌生 我正在尝试提出一个基本上可以执行以下操作的查询 select from tasks where completed 1 除以 select from tasks where completed 0 我已经找到了解决
  • 扩展会员提供者

    设想 构建一个供公司输入信息的应用程序 我需要扩展 ASP NET 中的内置成员资格提供程序 我的独特情况是 我已经拥有每家公司的人口统计信息 但没有网络应用程序的用户 ID 和密码 我想用人口统计信息预先填充数据库 向每个公司发送一个唯一
  • 将 Postgres 自动增量值重置为 0

    我有一个表 有时我会在内联编辑器中输入数据 在其中手动添加通常自动递增的 id 值 在使用脚本自动生成 id 4 然后内联添加 id 5 和 6 的情况下 每当我运行插入查询时 数据库都会尝试自动递增值 4 但是值 5 已由用户添加到数据库
  • H2数据库,通过从CSVREAD选择结果插入

    我有一个 CSV 文件 例如 1 hello 13 2 world 14 3 ciao 26 我正在尝试使用CSVREAD函数将该文件读入数据库 如下所示 insert into my table id message code value
  • 如何从 VB.NET 中的存储过程获取返回值

    我在 SQL Server 中有一个存储过程用于生成事务号 任何人都可以帮助我如何从 VB NET 调用存储过程以及如何获取从过程返回到前端的值 问候 乔治 我想你想要这样的东西 Public Sub Foo Using sql As Ne
  • 获取已安装应用程序的位置 vb.net

    我在vb net上发布了一个应用程序 用户将能够将应用程序安装在计算机上他们选择的任何位置 或者可能不是他们选择的任何位置 而是默认位置 我如何以编程方式获取用户安装应用程序的位置 换句话说 我需要应用程序知道它从哪里运行 我如何检测到这一
  • 如何将服务添加到 .Net 中属性网格的类型描述符上下文中?

    我有一个应用程序 允许用户在设计时选择图像 无论是直接图像还是从图像列表中 到目前为止 一切都很酷 除了这不是发生在 Visual Studio 属性浏览器中 而是发生在作为类型编辑器一部分的属性网格中 我的问题是 图像选择器 实际上是资源
  • 将数据导入mysql的最佳方法

    我有一个包含 500 000 行和大约 10 列的表 该表处于访问状态 我如何将其导入到mysql 这是关于该主题的文章 http www kitebird com articles access migrate html http www
  • SQL 中的双冒号 `::` 表示法

    我捡到了某人的代码 以下是其中的一部分WHERE条款 这里的双冒号表示什么 b date completed gt a dc date INTERVAL 1 DAY 7 20 00 它根据 RDBMS 的不同而有所不同 但如果我猜对的话 那
  • 在 SQL 中合并具有重叠日期范围的记录

    编辑 我们当前的服务器是 SQL 2008 R2 因此 LAG LEAD 功能将不起作用 我正在尝试获取表中的多个数据流并将它们组合成 1 个数据流 鉴于下面的 3 个数据流 我希望最终结果是 1 个优先考虑状态 on 的流 递归似乎是最好
  • 在 SQL 查询中使用聚合函数

    我的表结构是这样的 ATT Table Fields Act ID Assigned To ID Percent Complete Integer value Act ID is primary key Assigned To ID is
  • 父元素的递归串联

    我有一个看起来像这样的表 ID Name Parent 1 A NULL 2 B NULL 3 C 1 4 D 1 5 E 3 6 F 5 我想要一个视图返回这个 ID Name ParentNames 1 A 2 B 3 C A 4 D
  • 将一个表的所有行复制到另一个表

    我有两个数据库MySQL and SQL Server 我想在其中创建表SQL Server并复制表中的所有行MySQL到新表中SQL Server 我可以在中创建表SQL Server与 一样MySQL 使用以下代码 List
  • 选择从查询中检索列名称的列

    我正在寻找一种优雅的方法来从表 A 中选择列 其中列名是从表 B 上的查询中检索的 对表 B 的查询结果 col01 表 A 有几个名为 col01 col02 col03 最终查询应该是为了结果 result from B effecti
  • 当我传递 NULL 值时,COALESCE 函数不起作用,但当将变量声明为 NULL 时它起作用

    当我执行以下查询时 我得到输出 但是当我通过NULL参数 它不起作用 示例1 DECLARE a int NULL b int NULL c int NULL SELECT COALESCE a b c GO 输出 空 示例2 SELECT
  • 如何从单行创建多行 - 规范化表

    我对 SQL 很陌生 并试图弄清楚这一点 我有一个名为 BUDGET 的表 其中包含一年中每个月的 12 列 显示该月的预算余额 所以表格看起来像这样 Department Year Month1 Month2 Month12 ABCD 2

随机推荐