设为首页 加入收藏

TOP

深入MySQL数据库的索引(二)
2014-11-23 23:40:41 来源: 作者: 【 】 浏览:21
Tags:深入 MySQL 数据库 索引
EX语句来删除索引。类似于 CREATE INDEX 语句,DROP INDEX 通常在内部作为一条 ALTER TABLE 语句处理,并且DROP INDEX是在 MySQL 3.22 中引入的。

删除索引语句的语法如下:

DROP INDEX index_name ON tbl_name

还是上一节的例子,由于CREATE INDEX不能创建PRIMARY索引,所以这里我们值创建一个多列索引:

mysql> CREATE INDEX mark ON student(english,chinese,history);

同样的检查student表,可知:

mysql> SHOW INDEX FROM student;

+---------+------------+----------+--------------+-------------+

| Table | Non_unique | Key_name | Seq_in_index | Column_name |

+---------+------------+----------+--------------+-------------+

| student | 1 | mark | 1 | english |

| student | 1 | mark | 2 | chinese |

| student | 1 | mark | 3 | history |

+---------+------------+----------+--------------+-------------+

然后使用下面的语句删除索引:

mysql> DROP INDEX mark ON student;

在创建表时指定索引

要想在发布 CREATE TABLE 语句时为新表创建索引,所使用的语法类似于 ALTER TABLE 语句的语法,但是应该在您定义表列的语句部分指定索引创建子句,如下所示:

CREATE TABLE tbl_name
(

INDEX index_name (column_list),
KEY index_name (column_list),
UNIQUE index_name (column_list),
PRIMARY KEY index_name (column_list),

)

与ALTER TABLE 一样,索引名对于 INDEX 和 UNIQUE 都是可选的,如果未给出,MySQL 将为其选一个。另外,这里KEY时INDEX的一个别名,具有相同的意义。

有一种特殊情形:可在列定义之后增加 PRIMARY KEY 创建一个单列的PRIMARY KEY 索引,如下所示:

CREATE TABLE tbl_name
(
i INT NO

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇MySQL索引背后的数据结构及算法原.. 下一篇适宜做简单搜索的MySQL数据库全文..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: