索引是一种数据结构,MYSQL允许我们在现有表中添加索引。使用索引可以更快地检索数据库表上的记录。索引为索引列的每个值创建一个条目。我们可以通过使用表的一列或多列来创建索引,以便有效地访问记录。
当使用主键或唯一键创建表时,它会自动创建一个名为PRIMARY的特殊索引。我们称这个索引为聚集索引。PRIMARY 索引以外的所有索引都称为非聚集索引或二级索引。
普通索引
创建索引
CREATE INDEX indexName ON table_name (column_name)
修改表结构(添加索引)
ALTER table tableName ADD INDEX indexName(columnName)
创建表的时候直接指定
CREATE TABLE mytable(
ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
INDEX indexName
);
删除索引的语法
DROP INDEX [indexName] ON mytable;
唯一索引
创建索引
CREATE UNIQUE INDEX indexName ON mytable(username(length))
修改表结构
ALTER table mytable ADD UNIQUE [indexName] (username(length))
创建表的时候直接指定
CREATE TABLE mytable(
ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
UNIQUE indexName
);
使用ALTER 命令添加和删除索引
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): 该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL。 ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。 ALTER TABLE tbl_name ADD INDEX index_name (column_list): 添加普通索引,索引值可出现多次。 ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):该语句指定了索引为 FULLTEXT ,用于全文索引。
mysql> ALTER TABLE testalter_tblADD INDEX (c);
mysql> ALTER TABLE testalter_tblDROP INDEX c;
使用 ALTER 命令添加和删除主键
mysql> ALTER TABLE testalter_tblMODIFY i INT NOT NULL;mysql> ALTER TABLE testalter_tblADD PRIMARY KEY (i);
mysql> ALTER TABLE testalter_tblDROP PRIMARY KEY;
显示索引信息
mysql> SHOW INDEX FROM table_name\G
........

长按二维码关注公众号,查阅更多教程
文章转载自跟谁学编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




