知识大全 Replace INTO与Insert INTO的不同之处

Posted 索引

篇首语:行是知之始,知是行之成。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Replace INTO与Insert INTO的不同之处相关的知识,希望对你有一定的参考价值。

数据库进阶:Replace INTO与Insert INTO的不同之处  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Replace INTO和INSERT INTO的区别:

  REPLACE的运行与INSERT很相似 只有一点例外 假如表中的一个旧记录与一个用于PRIMARY KEY或一个UNIQUE索引的新记录具有相同的值 则在新记录被插入之前 旧记录被删除

  注意 除非表有一个PRIMARY KEY或UNIQUE索引 否则 使用一个REPLACE语句没有意义 该语句会与INSERT相同 因为没有索引被用于确定是否新行复制了其它的行

  所有列的值均取自在REPLACE语句中被指定的值 所有缺失的列被设置为各自的默认值 这和INSERT一样 您不能从当前行中引用值 也不能在新行中使用值 如果您使用一个例如 SET col_name = col_name + 的赋值 则对位于右侧的列名称的引用会被作为DEFAULT(col_name)处理 因此 该赋值相当于SET col_name = DEFAULT(col_name) +

  为了能够使用REPLACE 您必须同时拥有表的INSERT和DELETE权限

  REPLACE语句会返回一个数 来指示受影响的行的数目 该数是被删除和被插入的行数的和 如果对于一个单行REPLACE该数为 则一行被插入 同时没有行被删除 如果该数大于 则在新行被插入前 有一个或多个旧行被删除 如果表包含多个唯一索引 并且新行复制了在不同的唯一索引中的不同旧行的值 则有可能是一个单一行替换了多个旧行

  受影响的行数可以容易地确定是否REPLACE只添加了一行 或者是否REPLACE也替换了其它行 检查该数是否为 (添加)或更大(替换)

  如果您正在使用C API 则可以使用mysql_affected_rows()函数获得受影响的行数

  目前 您不能在一个子查询中 向一个表中更换 同时从同一个表中选择

  下文时算法的详细说明(此算法也用于LOAD DATA…REPLACE)

   尝试把新行插入到表中

   当因为对于主键或唯一关键字出现重复关键字错误而造成插入失败时

  a 从表中删除含有重复关键字值的冲突行

  b 再次尝试把新行插入到表中

  使用格式如下:

cha138/Article/program/SQL/201311/16179

相关参考

知识大全 oraclemergeinto用法及例子

  ORACLEI中加入了MERGE  语法  MERGE[hint]INTO[schema]table[t_alias]  USING[schema]table|view|subquery[t_al

知识大全 js replace 与replaceall实例用法

  jsreplace与replaceall实例用法  stringObjreplace(rgExpreplaceText)  参数  stringObj  必选项要执行该替换的String对象或字符

知识大全 js replace 与replaceall实例用法详解

这篇文章介绍了jsreplace与replaceall实例用法详解有需要的朋友可以参考一下   stringObjreplace(rgExpreplaceText)参数stringObj必选

知识大全 插入数据-INSERT语句

SQL实战新手入门:插入数据-INSERT语句  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  插

知识大全 Oracle多表创建的视图insert解决方法

Oracle多表创建的视图insert解决方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  单

知识大全 jsp连接MySQL实现插入insert操作功能示例

jsp连接MySQL实现插入insert操作功能示例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 用replace实现替换正在使用的文件

  XP有一个很无敌的命令用来替换文件的replace连正在使用的文件也能替换非常无敌比如在C下建一个目录c\\aaa然后复制一首mp到c:aaa并命名为c:\\aaa\\amp然后再复制另一首歌到C

知识大全 ASP中Replace如何替换不区分大小写

ASP中Replace如何替换不区分大小写  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  我们先

知识大全 如何用Replace查询是否包含某个特定字符串

如何用Replace查询是否包含某个特定字符串  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  R

知识大全 LINQ to SQL语句之Insert/Update/Delete操作

LINQtoSQL语句之Insert/Update/Delete操作  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快