首页 > 数据库 >MySQL 索引的创建、删除

MySQL 索引的创建、删除

时间:2022-12-21 12:15:53浏览次数:66  
标签:index 删除 创建 列名 表名 索引 MySQL table

MySQL中索引的创建有三种方法,索引的删除有两种方法。

一、创建索引

(1)使用create index

# 1.创建普通索引
create index 索引名 on 表名 (列名[(限制索引长度)]);
# 2.创建唯一性索引
create unique index 索引名 on 表名 (列名);
# 3.创建全文索引
create fulltext index 索引名 on 表名 (列名);

注意:

  • 索引名:指定索引名。一个表可以创建多个索引,但每个索引在该表中的名称是唯一的。
  • 表名:指定要创建索引的表名。
  • 列名:指定要创建索引的列名。通常可以考虑将查询语句中在 JOIN 子句和 WHERE 子句里经常出现的列作为索引列。
  • 限制索引长度:可选项。指定使用列前的 length 个字符来创建索引。使用列的一部分创建索引有利于减小索引文件的大小,节省索引列所占的空间。

(2)修改表的方式创建索引

#在修改表的同时为该表添加索引
# 1.普通索引
alter table examination_info add index 索引名(列名);
# 2.唯一性索引
alter table examination_info add unique index 索引名(列名);
# 3.全文索引
alter table examination_info add fulltext index 索引名(列名);
#在修改表的同时为该表添加主键
alter table examination_info ADD PRIMARY KEY [索引名] (列名,...);
#在修改表的同时为该表添加外键
alter table examination_info ADD FOREIGN KEY [索引名] (列名,...);

注意:

  • 索引类型:普通索引、唯一性索引、全文索引

(3)建表的时候创建索引

#在创建新表的同时创建该表的索引
create table tableName(  
  id int not null,   
  列名  列的类型,
  unique | index [索引名] [索引类型] (列名,...);
);
#在创建新表的同时创建该表的外键
create table tableName(  
  id int not null,   
  列名  列的类型,
  foreign key [索引名] 列名;
);

二、删除索引

(1)使用drop index

drop index 索引名 on 表名;

(2)使用alter table

alter table 表名 drop index 索引名;

参考文章
MySQL创建索引(CREATE INDEX)

标签:index,删除,创建,列名,表名,索引,MySQL,table
From: https://www.cnblogs.com/chengyj/p/16995955.html

相关文章

  • mysql 查询重复/删除重复的记录[多字段]
    #####查询重复数据SELECTt.*FROMlike_usert,(SELECTuser_id,COUNT(user_id),dynamc_id,COUNT(dynamc_id)FROMlike_userGROUPBYuser_id,dynamc_idHA......
  • MySQL 删除数据 批量删除(大量)数据
    在删除数据的时候根据不同的场景使用不同的方法,比如说删除表中部分数据、删除表的结构、删除所有记录并重置自增ID、批量删除大量数据等,可以使用delete、truncate、drop等......
  • MySQL 表的创建、复制、修改与删除
    MySQL中如何利用代码完成表的创建、复制、修改和删除。一、创建表--创建新表,如果存在则覆盖droptable[ifexists]表名;--创建新表,如果存在则返回createtable[if......
  • MySQL 更新数据 不同条件(批量)更新不同值
    一般在更新时会遇到以下场景:1.全部更新;2.根据条件更新字段中的某部分内容;3.根据不同的条件更新不同的值,以下是几种场景中常用的update方法。一、方法分类二、具体用法(1......
  • MySQL 插入数据 数据重复 从另一个表导入数据
    当使用MySQL插入数据时,我们可以根据需求选择合适的插入语句。一、方法分类二、具体方法使用场景作用语句注意常规插入忽略字段名insertinto表名......
  • MySQL 字符串长度 char_length、length
    一、方法分类二、具体方法函数描述区别char_length(str)或character_length(str)返回字符串str的字符1、单位为字符2、不管汉字还是数字或者是字母都算是......
  • MySQL 判断语句 条件函数 case when、if、ifnull
    在MySQL中,需要用到条件判断函数,例如casewhen、if、ifnull。一、方法分类二、具体方法(1)ifif(expr,result_true,result_false)注意:一个条件表达式两个结果expr......
  • MySQL——InnoDB体系结构
      InnoDB引擎主要包含几个重要部分: 1、内存池 1.1缓冲池 InnoDB将记录按页的形式进行管理,对于页的修改先修改缓冲池中的页,后以一定频率进行刷新到磁盘中(checkpoint......
  • MySQL——InnoDB索引原理
    一、各种树形结构 1、二叉树:允许每个节点下最多有两个子节点 二叉树在数据库中不使用的原因是: 1)、树长歪了---》树的倾斜问题 查询的代价是不可控的,主要原因是树的高......
  • 索引数据结构底层(全)
    读者忠告由于本文内容篇幅较长,涵盖了大家学习上、工作上的绝大多数索引,建议大家每一小节都认真阅读并理解透彻,如有疑问可在评论区留言探讨;文章目录​​读者忠告​​​​一、......