zoukankan      html  css  js  c++  java
  • MySQL数据库之插入数据时的主键冲突

    插入数据时的主键冲突

    • 如果插入的主键重复会报错
    -- 插入测试表
    mysql> create table stu(
        -> id char(4) primary key,
        -> name varchar(20)
        -> )engine=innodb;
    # `Query OK, 0 rows affected (0.06 sec)`
    
    -- 插入测试数据
    mysql> insert into stu values ('s001','tom');
    # `Query OK, 1 row affected (0.00 sec)`
    
    • 如果插入的主键重复就执行替换
    -- 原理:如果插入的主键不重复就直接插入,如果主键重复就替换(删除原来的记录,插入新记录)
    mysql> replace into stu values('s002','ketty');
    # `Query OK, 2 rows affected (0.00 sec)`
    
    • on duplicate key update
      • 当插入的值与主键或唯一键有冲突执行update操作
    -- 插入的数据和主键或唯一键起冲突,将s002的name字段改为‘李白’
    mysql> insert into stu values ('s002','李白') on duplicate key update name='李白';
    # `Query OK, 2 rows affected (0.00 sec)`
    
  • 相关阅读:
    免费下载小说
    前段博客云库网
    node发送邮件
    node 发送短信
    node生成uuid
    node 控制台颜色
    OfficeCommandbarDesigner20170202.rar
    OfficeCommandbarViewer20171005.rar
    VB.Net 正则表达式测试器
    Windows_Management_Instrumentation
  • 原文地址:https://www.cnblogs.com/SharkJiao/p/14137812.html
Copyright © 2011-2022 走看看