概述
mysql第五章实现索引
一、索引作用
索引:用于更快的从表中获取数据。
二、索引简介,创建和管理索引
1.五种索引简介
a.主键
对应索引的列值必须唯一,列值不能包含NULL值。
b.外键
定义表之间的关系,并确保这些表中数据的一致性,即一个表中的数据依赖于另一个表中的数据。
c.唯一
与主键相似,但可以包含NULL值。
d.常规
与主键相反,可在列值重复和包含NULL值的列上定义。
e.全文
可在可以接受字符串值(例char、varchar、txt)的列上定义,与常规相比可以加快搜索列数据中字符串的速度。
2.创建五种索引
a.创建常规索引:
CREATE TABLE 表名
(
...
INDEX|KEY 索引名(列名)#如果需要在多个列上创建常规索引,要用逗号隔开,即(列名),(列名)...
)
#例如:
create table Books(
BookID int primary key,
Title varchar(40) not null,
AuthorID int not null,
language varchar(20) not null,
index idx_lang(language)#创建常规索引
);
b.创建全文索引:
CREATE TABLE 表名
(
...
FULLTEXT [KEY|INDEX] 索引名(列名)#key与index可以不加
)
c.创建唯一索引:
CREATE TABLE 表名
(
...
UNIQUE [KEY|INDEX] 索引名(列名)#key与index可以不加
)
#例如:
create table Author(
AuthorID int primary key,
AuthorName varchar(30) not null,
Email varchar(30) not null,
UNIQUE idx_unq_email(Email)
);
d.主键
CREATE TABLE 表名
(
...
[constraint constraint_name]PRIMARY KEY (COLUMN_NAME)#[]内容可不加
)
e.外键
CREATE TABLE 表名
(
...
[constraint constraint_name]FOREIGN KEY (COLUMN_NAME)#[]内容可不加
)
2.在现有表上创建索引
ALTER TABLE 语句
该语句允许在现有表上创建五种类型的索引
对应的创建常规索引的语法是
alter table 表名 add index|key [索引名] (列名)#[]内容可不加,如果不加索引名,则索引名默认为列名
创建全文索引
alter table 表名 add fulltext [index] [索引名] (列名)#[]内容可不加
CREATE INDEX语句
该语句也可以在现有表上创建索引,与alter table语句不同的是,它不能创建主键和外键索引
对应的创建唯一索引的语法是(全文索引将unique改为fulltext)
create unique index 索引名 on 表名(列名)
创建常规索引的语法是
create index 索引名 on 表名(列名)
3.查看索引
语法:
show indexes from 表名[数据库名称]#[]内容可不加,数据库名称用于指定数据库
4.删除索引
alter table语句
语法:
alter table 表名 drop index 索引名
当实际使用中某个索引使用较少时,可考虑删除。
drop index语句
语法:
drop index 索引名 on 表名
最后
以上就是陶醉苗条为你收集整理的sql:实现索引mysql第五章实现索引的全部内容,希望文章能够帮你解决sql:实现索引mysql第五章实现索引所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复