十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Mysql设置某字段唯一
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比南涧网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式南涧网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖南涧地区。费用合理售后完善,10多年实体公司更值得信赖。
1.建表时加上唯一性约束
CREATE TABLE `t_user` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(18) NOT NULL unique,
`password` varchar(18) NOT NULL,
PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=1018 DEFAULT CHARSET=gbk;
2.给已经建好的表加上唯一性约束
ALTER TABLE `t_user` ADD unique(`username`);
mysql主键索引和唯一索引
1.主键一定是唯一性索引,唯一性索引并不一定就是主键;
2.一个表中可以有多个唯一性索引,但只能有一个主键;
3.主键列不允许空值,而唯一性索引列允许空值。
采纳噢
用phpmyadmin查看你的数据库,不要设置为主键、不要选择唯一索引,是否允许重复与数据类型无关。
1.UNIQUE 关键字建唯一索引\x0d\x0amysql CREATE TABLE `wb_blog` ( \x0d\x0a - `id` smallint(8) unsigned NOT NULL, \x0d\x0a - `catid` smallint(5) unsigned NOT NULL DEFAULT '0', \x0d\x0a - `title` varchar(80) NOT NULL DEFAULT '', \x0d\x0a - `content` text NOT NULL, \x0d\x0a - PRIMARY KEY (`id`), \x0d\x0a - UNIQUE KEY `catename` (`catid`) \x0d\x0a - ) ; \x0d\x0a如果建好表了,可以用以下语句建\x0d\x0a mysql CREATE UNIQUE INDEX catename ON wb_blog(catid); \x0d\x0a\x0d\x0a2.联合索引\x0d\x0aALTER TABLE `tasks`\x0d\x0aADD INDEX `testabc` (`title`, `created`) ;\x0d\x0a\x0d\x0a3联合唯一索引(假设有这个需求,在同一天内不能建两个tiltle一样的任务)\x0d\x0aALTER TABLE `tasks`\x0d\x0aADD UNIQUE INDEX `testabc` (`title`, `created`) ;\x0d\x0a\x0d\x0a数据库建索引的科学性事关数据库性能,索引也不是越多越好。