MySQL避免插入重复记录:唯一性约束

版权声明:本文为博主原创文章,未经博主允许不得转载。

表结构

CREATE TABLE `t3` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `c1` int(11) NOT NULL,
  `c2` varchar(20) DEFAULT NULL,
  `c3` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `c1` (`c1`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=latin1;

插入测试

表中数据

sql

insert ignore into t3 (c1,c2,c3) values(100,'cc',4),(6,'dd',5);

结果

[SQL] insert ignore into t3 (c1,c2,c3) values(100,'cc',4),(6,'dd',5);
受影响的行: 1
时间: 0.078s

如果把 ignore 删除,

sql

insert into t3 (c1,c2,c3) values(100,'cc',4),(6,'dd',5);

结果

[SQL] insert into t3 (c1,c2,c3) values(100,'cc',4),(6,'dd',5);
[Err] 1062 - Duplicate entry '100' for key 'c1'

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java呓语

第13.1.1章 语法解释ALTER DATABASE

ALTER DATABASE 允许修改数据库的特征,所有关于数据库的特征都存储在db.opt文件中。你必须先具备该数据库的ALTER特权,才能完成对数据库的AL...

741
来自专栏极客生活

mysql 数据去重

从excel中导入了一部分数据到mysql中,有很多数据是重复的,而且没有主键,需要按照其中已经存在某一列对数据进行去重。

892
来自专栏测试开发架构之路

MySQL/Oracle索引的创建与使用

MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检索速度。

792
来自专栏吴柯的运维笔记

MySQL索引类型及用法

2017年9月13日 12:55 索引类型: ? index索引: ? 在已有表中创建index索引: create index 索引名 on 表名(字段名)...

2998
来自专栏跟着阿笨一起玩NET

SET XACT_ABORT各种用法及显示结果

  2、每个语句作为一个事务,事务在错误行终止,错误行回滚,错误行之前的不回滚,格式为:

972
来自专栏calmound

操作数据表

打开数据库    use 数据库 ---- use mydata 查看数据库    show databases 显示当前用户打开的数据库   SELECT ...

3156
来自专栏码农二狗

mysql无符号整型溢出

1204
来自专栏互联网杂技

外键约束

外键约束 foreign key 外键约束的要求: 父表和字表必须使用相同的存储引擎,禁止使用临时表; 数据库引擎只能是InnoDB; 外键列和参照列必须具有...

3579
来自专栏Ryan Miao

Postgres和MySQL创建用户并授予db权限

Postgresql和MySQL还是有很多不同的。就比如授权来说。当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user。

1124
来自专栏奇梦博客

Xiuno BBS 4.0 表结构 XiunoBBS

981

扫码关注云+社区