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 条评论
登录 后参与评论

相关文章

来自专栏奇梦博客

Xiuno BBS 4.0 表结构 XiunoBBS

11410
来自专栏互联网杂技

外键约束

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

36490
来自专栏WindCoder

MySQL中INSERT INTO SELECT的应用

这种方法常用在目标表已经存在数据库中.需要从源表把数据插入到目标表的情况.如果目标表和源表的列相同,就不必列出数据列了.(未完待续,另参考资料中重复项太多,暂且...

1.4K10
来自专栏ml

mysql的小知识点(关于数据库的导入导出 对于windows)

      对于,一个存在的数据,我们该如何去打包成.sql属性的文件呢?       直接进行这两条语句: 1 D:\Program Files\MySQL\...

51280
来自专栏开源项目

Git 项目推荐 | 分布式系统唯一 ID 生成方法

image.png 在工程中引用sequence项目的sequence-client jar包 在的应用数据库中创建两个sequence表,sql语句如下:...

337110
来自专栏极客生活

mysql 数据去重

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

14520
来自专栏开源优测

SQL常用的基础语法

SQL常用的语法 本文主要分享SQL日常使用过程中常用的语法样式。 在sql语句中,主要的关键词有SELECT、INSERT、UPDATE、DELETE、ALE...

32380
来自专栏Ryan Miao

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

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

14140
来自专栏calmound

操作数据表

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

32360
来自专栏Samego开发资源

入门级Oracle存储过程 | oracle

12820

扫码关注云+社区

领取腾讯云代金券