如果確定某個資料列只包含彼此各不相同的值,在為這個資料列建立索引的時候,就應該用關鍵字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)
以上是MySQL唯一索引什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!