主键索引、唯一索引、普通索引、全文索引的创建及删除

2019-03-20  本文已影响0人  进击的PHPer

创建主键索引:ALTER TABLE mytable ADD PRIMARY KEY (id);

创建唯一索引:CREATE UNIQUE INDEX age ON mytable(age);

创建普通索引:CREATE INDEX username ON mytable(username);

删除索引:DROP INDEX 索引的名字 ON 索引的表;

-- 1.添加PRIMARY KEY(主键索引)

ALTERTABLE`table_name`ADDPRIMARYKEY(`column`) ;

-- 2.添加UNIQUE(唯一索引)

ALTERTABLE`table_name`ADDUNIQUE(`column`);

-- 3.添加INDEX(普通索引)

ALTERTABLE`table_name`ADDINDEXindex_name (`column`);

-- 4.添加FULLTEXT(全文索引)

ALTERTABLE`table_name`ADDFULLTEXT (`column`);

-- 5.添加多列索引

ALTERTABLE`table_name`ADDINDEXindex_name (`column1`,`column2`,`column3`);

多列索引

ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )

1.普通索引。

这是最基本的索引,它没有任何限制。它有以下几种创建方式:

(1)创建索引:CREATE INDEX indexName ON tableName(tableColumns(length));如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是BLOB 和 TEXT 类型,必须指定length,下同。

(2)修改表结构:ALTER tableName ADD INDEX [indexName] ON (tableColumns(length))

(3)创建表的时候直接指定:CREATE TABLE tableName ( [...], INDEX [indexName] (tableColumns(length)) ;

2.唯一索引。

它与前面的"普通索引"类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。它有以下几种创建方式:

(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命令。

上一篇 下一篇

猜你喜欢

热点阅读