如果確定某個數據列只包含彼此各不相同的值,在為這個數據列創建索引的時候,就應該用關鍵字unique把它定義為一個唯一索引。
mysql會在有新紀錄插入數據表時,自動檢查新紀錄的這個字段的值是否已經在某個記錄的這個字段里出現過了。如果是,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隨表一同創建
注:這是在命令行窗口進行操作 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命令來創建
mysql> CREATE UNIQUE INDEX catename ON wb_blog(catid); Query OK, 0 rows affected (0.47 sec)
如果不需要唯一索引,則可以這樣刪除
mysql> ALTER TABLE wb_blog DROP INDEX catename; Query OK, 0 rows affected (0.85 sec)
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END