本文摘自PHP中文网,作者(*-*)浩,侵删。
如果确定某个数据列只包含彼此各不相同的值,在为这个数据列创建索引的时候,就应该用关键字UNIQUE把它定义为一个唯一索引。Mysql会在有新纪录插入数据表时,自动检查新纪录的这个字段的值是否已经在某个记录的这个字段里出现过了。如果是,mysql将拒绝插入那条新纪录。

也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。
创建唯一索的方法
操作表
1 2 3 4 5 6 7 8 | CREATE TABLE `wb_blog` (
`id` smallint(8) unsigned NOT NULL,
`catid` smallint(5) unsigned NOT NULL DEFAULT '0' ,
`title` varchar(80) NOT NULL DEFAULT '' ,
`content` text NOT NULL,
PRIMARY KEY (`id`),
)
|
创建唯一索可以使用关键字UNIQUE随表一同创建
1 2 3 4 5 6 7 8 9 10 | 注:这是在命令行窗口进行操作
mysql> CREATE TABLE `wb_blog` (
-> `id` smallint(8) unsigned NOT NULL,
-> `catid` smallint(5) unsigned NOT NULL DEFAULT '0' ,
-> `title` varchar(80) NOT NULL DEFAULT '' ,
-> `content` text NOT NULL,
-> PRIMARY KEY (`id`),
-> UNIQUE KEY `catename` (`catid`)
-> ) ;
Query OK, 0 rows affected (0.24 sec)
|
上面代码为wb_blog表的'catid'字段创建名为catename的唯一索引
2、在创建表之后使用CREATE命令来创建
1 2 | mysql> CREATE UNIQUE INDEX catename ON wb_blog(catid);
Query OK, 0 rows affected (0.47 sec)
|
如果不需要唯一索引,则可以这样删除
1 2 | mysql> ALTER TABLE wb_blog DROP INDEX catename;
Query OK, 0 rows affected (0.85 sec)
|
以上就是MySQL唯一索引什么意思的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
mysql如何查看字段注释
分享mysql基于ssl安全连接的主从复制的详细介绍
drop table是什么命令?
mysql中锁的必要性及分类介绍
mysql 教程之列类型中的日期时间型
mysql如何导入txt数据?
mysql什么时候用索引
mysql视图怎么修改表中信息
mysql怎么取出数据库备份sql
linux上优化mysql技巧
更多相关阅读请进入《mysql》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MySQL唯一索引什么意思