mysql INSERT IGNORE INTO语句和unique关键字来忽略表中已存在的值

您可以使用INSERT IGNORE INTO语句来忽略表中已存在的值。如果表中已经存在具有相同值的行,则INSERT语句不会插入新行。以下是一个示例:
INSERT IGNORE INTO myTable (id, name) 
VALUES (1, 'John'), (2, 'Mary'), (1, 'John');
在这个例子中,myTable表中有两列,id和name。第一次插入操作将添加id为1,name为John的新行,第二次插入操作将添加id为2,name为Mary的新行,第三次插入操作将被忽略,因为已经存在具有相同id和name值的行。
 请注意,INSERT IGNORE INTO语句仅忽略具有相同主键或唯一索引的行,因此请确保在执行此操作之前为表添加了适当的主键或唯一索引。

INSERT或IGNORE将忽略任何违反UNIQUE约束的行。

唯一的约束是在_id列上,您没有指定。

如果要防止这两列中出现重复,则必须为表定义添加约束:

ALTER TABLE MyTable
ADD CONSTRAINT unq_MyTable_name UNIQUE (name);

此示例使用 ALTER TABLE 语句将一个名为 unq_MyTable_name 的唯一性约束条件添加到 MyTable 表中的 name 列。请注意,如果要删除唯一性约束,请使用 ALTER TABLE 语句的 DROP CONSTRAINT 子句。

ALTER TABLE [dbo].[ljlldata] DROP CONSTRAINT [unq_MyTable_name]

删除唯一键

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值