##索引的操作##
#创建普通索引#
创建普通表时创建普通索引:
CREATE TABLE table_name(
属性名 数据类型,
属性名 数据类型,
......
属性名 数据类型,
INDEX|KEY 【索引名】(属性名1 【(长度)】 【ASC|DESC】)
);
eg:
USE company;
CREATE TABLE t_dept(
deptno INT,
dname varchar(20),
loc varchar(20),
INDEX index_deptno(deptno)
);
校验数据库表t_dept是否创建成功
SHOW CREATE TABLE t_dept\G
校验数据库表t_dept中的索引是否被引用
EXPLAIN SELECT * FROM t_dept WHERE deptno=1\G
在已经存在的表上创建普通索引:
CREATE INDEX|KEY 索引名
ON 表名 (属性名1 【(长度)】 【ASC|DESC】);
通过SQL语句创建普通索引:
ALTER TABLE table_name
ADD INDEX|KEY 索引名(属性名1 【(长度)】 【ASC|DESC】);
#创建唯一索引#
创建普通表时创建唯一索引:
CREATE TABLE table_name(
属性名 数据类型,
属性名 数据类型,
......
属性名 数据类型,
UNIQUE INDEX|KEY 【索引名】(属性名1 【(长度)】 【ASC|DESC】)
);
在已经存在的表上创建唯一索引:
CREATE UNIQUE INDEX|KEY 索引名
ON 表名 (属性名1 【(长度)】 【ASC|DESC】);
通过SQL语句创建唯一索引索引:
ALTER TABLE table_name
ADD UNIQUE INDEX|KEY 索引名(属性名1 【(长度)】 【ASC|DESC】);
#创建全文索引#
·主要关联数据类型为CHAR、VARCHAR、和TEXT字段上
·只能在MyISAM存储引擎上的数据库表上创建全文索引
·默认全文索引的搜索执行不区分大小写
·若全文索引所关联的字段为二进制数据类型,则区分大小写
创建普通表时创建全文索引:
CREATE TABLE table_name(
属性名 数据类型,
属性名 数据类型,
......
属性名 数据类型,
FULLTEXT INDEX|KEY 【索引名】(属性名1 【(长度)】 【ASC|DESC】)
)ENGINE=MyISAM;
在已经存在的表上创建全文索引:
CREATE FULLTEXT INDEX|KEY 索引名
ON 表名 (属性名1 【(长度)】 【ASC|DESC】);
通过SQL语句创建全文索引:
ALTER TABLE table_name
ADD FULLTEXT INDEX|KEY 索引名(属性名1 【(长度)】 【ASC|DESC】);
#创建多列索引#
创建普通表时创建多列索引:
CREATE TABLE table_name(
属性名 数据类型,
属性名 数据类型,
......
属性名 数据类型,
INDEX|KEY 【索引名】(属性名1 【(长度)】 【ASC|DESC】,
属性名2 【(长度)】 【ASC|DESC】,
......
属性名n 【(长度)】 【ASC|DESC】)
);
在已经存在的表上创建多列索引:
CREATE INDEX|KEY 索引名
ON 表名 (属性名1 【(长度)】 【ASC|DESC】,
属性名2 【(长度)】 【ASC|DESC】,
......
属性名n 【(长度)】 【ASC|DESC】);
通过SQL语句创建全文索引:
ALTER TABLE table_name
ADD INDEX|KEY 索引名(属性名1 【(长度)】 【ASC|DESC】,
属性名2 【(长度)】 【ASC|DESC】,
......
属性名n 【(长度)】 【ASC|DESC】);
索引的操作
最新推荐文章于 2023-01-30 22:45:00 发布