MySQL奈何建设索引根基语法
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 语句中添加以下语法因素的某一项或几项。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |