加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

MySQL奈何建设索引根基语法

发布时间:2021-05-25 23:25:26 所属栏目:编程 来源:互联网
导读:MySQL 提供了三种建设索引的要领: 1) 行使 CREATE INDEX 语句 可以行使专门用于建设索引的 CREATE INDEX 语句在一个已有的表上建设索引,但该语句不能建设主键
MySQL 提供了三种建设索引的要领: 1) 行使 CREATE INDEX 语句 可以行使专门用于建设索引的 CREATE INDEX 语句在一个已有的表上建设索引,但该语句不能建设主键。

语法名目:

CREATE <索引名> ON <表名> (<列名> [<长度>] [ ASC | DESC])

语法声名如下:

<索引名>:指定索引名。一个表可以建设多个索引,但每个索引在该表中的名称是独一的。

<表名>:指定要建设索引的表名。

<列名>:指定要建设索引的列名。凡是可以思量将查询语句中在 JOIN 子句和 WHERE 子句里常常呈现的列作为索引列。

<长度>:可选项。指定行使列前的 length 个字符来建设索引。行使列的一部门建设索引有利于减小索引文件的巨细,节减索引列所占的空间。在某些环境下,只能对列的前缀举办索引。索引列的长度有一个最大上限 255 个字节(MyISAM 和 InnoDB 表的最大上限为 1000 个字节),假如索引列的长度高出了这个上限,就只能用列的前缀举办索引。其它,BLOB 或 TEXT 范例的列也必需行使前缀索引。

ASC|DESC:可选项。ASC指定索引凭证升序来分列,DESC指定索引凭证降序来分列,默以为ASC。

2) 行使 CREATE TABLE 语句 索引也可以在建设表(CREATE TABLE)的同时建设。在 CREATE TABLE 语句中添加以下语句。语法名目:

CONSTRAINT PRIMARY KEY [索引范例] (<列名>,…)

在 CREATE TABLE 语句中添加此语句,暗示在建设新表的同时建设该表的主键。

语法名目:

KEY | INDEX [<索引名>] [<索引范例>] (<列名>,…)

在 CREATE TABLE 语句中添加此语句,暗示在建设新表的同时建设该表的索引。

语法名目:

UNIQUE [ INDEX | KEY] [<索引名>] [<索引范例>] (<列名>,…)

在 CREATE TABLE 语句中添加此语句,暗示在建设新表的同时建设该表的独一性索引。

语法名目:

FOREIGN KEY <索引名> <列名>

在 CREATE TABLE 语句中添加此语句,暗示在建设新表的同时建设该表的外键。

在行使 CREATE TABLE 语句界说列选项的时辰,可以通过直接在某个列界说后头添加 PRIMARY KEY 的方法建设主键。而当主键是由多个列构成的多列索引时,则不能行使这种要领,只能用在语句的最后加上一个 PRIMARY KRY(<列名>,…) 子句的方法来实现。 3) 行使 ALTER TABLE 语句 CREATE INDEX 语句可以在一个已有的表上建设索引,ALTER TABLE 语句也可以在一个已有的表上建设索引。在行使 ALTER TABLE 语句修改表的同时,可以向已有的表添加索引。详细的做法是在 ALTER TABLE 语句中添加以下语法因素的某一项或几项。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读