zoukankan      html  css  js  c++  java
  • mysql中 REPLACE INTO 和 INSERT INTO 的区别

    mysql中 REPLACE INTO 和 INSERT INTO 的区别

            REPLACE INTO 和 INSERT INTO 功能类似,都是像表中插入数据,不同点在于:REPLACE INTO 首先尝试插入数据到表中:

    • 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。
    • 否则,直接插入新数据。

             要注意的是:

    • 插入数据的表必须有主键或者是唯一索引!否则的话,REPLACE INTO 会直接插入数据,这将导致表中出现重复的数据。
    • 除非表有一个PRIMARY KEY或UNIQUE索引,否则,使用一个REPLACE语句没有意义。
    • 为了能够使用REPLACE,您必须同时拥有表的INSERT和DELETE权限。
    • REPLACE语句会返回一个数,来指示受影响的行的数目。该数是被删除和被插入的行数的和。

             假如表中已经设置了主键,这时向表中插入一条主键已经存在的数据,那么先删除此行数据,然后插入新的数据,受影响的行: 2;如果向表插入一条主键不存在的数据,则是直接插入新数据,受影响的行: 1。

  • 相关阅读:
    快排 [模板]
    翻硬币
    Euphoria与量子波动速读
    高精度例题
    Div3 595 E
    Div 595 C1 C2
    常用 STL 整理
    CF 595 Div3 B2
    【思维】复杂度均摊+并查集——icpc cerc 2019 Saba1000kg
    离散化+圆直线交点+转化——icpc cerc 2019 D
  • 原文地址:https://www.cnblogs.com/muyuge/p/6152015.html
Copyright © 2011-2022 走看看