关于数据库字段不是主键可是也不能重复的问题解决办法?

关于数据库字段不是主键可是也不能重复的问题解决办法:数据库

1.建立表时设置:spa

SQL code:
 
CREATE TABLE `user` (
      `Id` int(11) NOT NULL AUTO_INCREMENT,  -- 自增
      `namevarchar(50) NOT NULL unique,  -- 惟一性约束          (若是是单个字段不可重复,能够用惟一主键)
      `phone` varchar(18) NOT NULL,  
      `mail` varchar(18) NOT NULL,  
       UNIQUE KEY (`phone`,`mail`), -- 联合惟一性约束         (若是是两个字段都不可重复,能够用联合惟一主键)
       PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=1018 DEFAULT CHARSET=gbk;
ALTER TABLE `user` ADD UNIQUE KEY(`name`);  -- 惟一约束
ALTER TABLE `user` ADD UNIQUE KEY(`phone`,`mail`); -- 联合惟一约束


2.建立表以后设置:code

SQL code:
 
ALTER TABLE `user` ADD UNIQUE KEY(`name`);  -- 惟一约束
ALTER TABLE `user` ADD UNIQUE KEY(`phone`,`mail`); -- 联合惟一约束

 

(个人问题是这么解决的,不必定是合理的,若是有高手请指点谢谢!)数据

相关文章
相关标签/搜索