中的unique约束列可以为空。
可做如下测试:
1、创建测试表test:
CREATE TABLE Persons
(Id_P int,
LastName varchar(255) NOT NULL,
UNIQUE (Id_P))2、首次插入一个空值:
insert into Persons values (null,'wang')执行结果截图,显示成功:
3、第二次插入一个空值:
insert into Persons values (null,'zhang')执行结果截图,同样显示成功:
结论:在unique的列是可以多次插入空值。
如果是用主键primary或者唯一索引unique区分了记录的唯一性,避免重复插入记录可以使用:复制代码 代码如下:
INSERT IGNORE INTO `table_name` (`email`, `phone`, `user_id`) VALUES ('test9@163.com', '99999', '9999')
这样当有重复记录就会忽略,执行后返回数字0
还有个应用就是复制表,避免重复记录:
复制代码 代码如下:
INSERT IGNORE INTO `table_1` (`name`) SELECT `name` FROM `table_2`
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)