MYSQL 唯一索引UNIQUE使用方法詳解

2021-10-01 02:14:14 字數 1929 閱讀 6086

建立唯一索引的目的不是為了提高訪問速度,而只是為了避免資料出現重複。唯一索引可以有多個但索引列的值必須唯一,索引列的值允許有空值。如果能確定某個資料列將只包含彼此各不相同的值,在為這個資料列建立索引的時候就應該使用關鍵字unique

把它定義為乙個唯一索引。

建立唯一索的方法

操作表**如下 複製**

create tablewb_blog(

idsmallint(8) unsigned not null,

catidsmallint(5) unsigned not null default 『0』,

titlevarchar(80) not null default 『』,

contenttext not null,

primary key (id),

1、建立唯一索可以使用關鍵字unique隨錶一同建立

**如下 複製**

mysql> create tablewb_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`)  

-> ) ;

9 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)

如果要增加索引

**如下 複製**

alter table user add unique index(user_id,user_name);

注意唯一索引。

它與前面的"普通索引"類似,不同的就是:索引列的值必須唯一,但允許有空值。如果是組合索引,則列值的組合必須唯一。它有以下幾種建立方式:

(1)建立索引:create unique index indexname on tablename(tablecolumns(length))

(2)修改表結構:alter tablename add unique [indexname] on (tablecolumns(length))

(3)建立表的時候直接指定:create table tablename ( […], unique [indexname] (tablecolumns(length));

3.主鍵索引

它是一種特殊的唯一索引,不允許有空值。一般是在建表的時候同時建立主鍵索引:create table testindex(i_testid int not null auto_increment,vc_name varchar(16) not null,primary key(i_testid)); 當然也可以用alter命令。

Mysql的唯一性索引unique

目錄 參考 唯一性索引表建立 drop table if exists sc create table sc id int 11 not null auto increment,name varchar 200 character set utf8 default null,class varcha...

mysql 唯一索引 mysql建立唯一索引

檢視索引 show index from 資料庫表名 alter table 資料庫add index 索引名稱 資料庫欄位名稱 primary key 主鍵索引 alter table table name add primary key column unique 唯一索引 alter tabl...

MySQL唯一索引

mysql唯一索引 返回首頁 1 唯一索引 unique 單列唯一索引和聯合唯一索引。索引是為了加速查詢。唯一索引是加了約束條件。例如主外來鍵。2 唯一索引的約束 約束不能重複 可以為空 主鍵不能重複 不能為空 3 唯一索引的寫法 create table t1 id int num int,uni...