mysql命令行下创建和删除索引简介

mysql命令行下创建和删除索引简介:
mysql中创建索引可以使用CREATE TABLE语句,也可以用CREATE
INDEX或ALTER TABLE来给表增加索引。索引的删除可以使用ALTER TABLE或DROP INDEX语句来实现。

(1)使用ALTER TABLE语句创建索引。
语法如下:
alter table table_name add index
index_name (column_list) ;
alter table table_name add unique
(column_list) ;
alter table table_name add primary key (column_list)
;

其中创建多列索引如下:

alter table table_name add index
index_name(column1,column2)
其中包括普通索引、UNIQUE索引和PRIMARY
KEY索引3种创建索引的格式,table_name是要增加索引的表名,column_list指出对哪些列进行添加索引,多列时各列之间用逗号分隔。
索引名index_name可选,缺省时,MySQL将根据第一个索引列赋一个名称。另外,ALTER
TABLE允许在单个语句中更改多个表,因此可以同时创建多个索引。
创建索引的示例如下:
mysql> use tpsc

Database changed
mysql> alter table tpsc add index shili (tpmc )
;
Query OK, 2 rows affected (0.08 sec)
Records: 2 Duplicates: 0
Warnings: 0
(2)使用CREATE INDEX语句对表增加索引。
能够增加普通索引和UNIQUE索引两种。其格式如下:

create index index_name on table_name (column_list) ;
create unique
index index_name on table_name (column_list) ;

说明:table_name、index_name和column_list具有与ALTER
TABLE语句中相同的含义,索引名不可选。注意,不能用CREATE INDEX语句创建PRIMARY KEY索引。
(3)删除索引。

删除索引可以使用ALTER TABLE或DROP INDEX语句来实现。DROP INDEX可以在ALTER
TABLE内部作为一条语句处理,其格式如下:
drop index index_name on table_name ;
alter
table table_name drop index index_name ;
alter table table_name drop
primary key ;

其中,在前面的两条语句中,都删除了table_name中的索引index_name。而在最后一条语句中,只在删除PRIMARY
KEY索引中使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。如果没有创建PRIMARY
KEY索引,但表具有一个或多个UNIQUE索引,则MySQL将删除第一个UNIQUE索引。

如果从表中删除某列,则索引会受影响。对于多列组合的索引,如果删除其中的某列,则该列也会从索引中删除。如果删除组成索引的所有列,则整个索引将被删除。

删除索引的操作,如下面的代码:
mysql> drop index shili on tpsc ;
Query OK, 2
rows affected (0.08 sec)
Records: 2 Duplicates: 0 Warnings: 0

该语句删除了前面创建的名称为“shili”的索引。

mysql命令行下创建和删除索引简介,布布扣,bubuko.com

时间: 2024-10-01 06:18:29

mysql命令行下创建和删除索引简介的相关文章

MySQL命令行下执行.sql脚本详解

本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sql,内容如下: 1 use test; 2 3 create table book 4 5 ( 6 7 tisbn varchar(20) primary key, 8 9 tbname varchar(100), 10 11 tauthor varchar(30), 12 13 chubanshe

Windows Git Bash命令行下创建git仓库并更新到github

大二的时候就听过老师说有一个叫git的版本管理工具,当时只是听老师说说而已,也没有去使用它,因为当时用过svn,就感觉自己没多少东西需要git管理. 最近几天,我经常在开源中国看别人的帖子,看到别人对git和github这个平台评价如此之高,于是我就下载了一个windows版本的git bash, 一开始使用就被它的速度和实用所折服,于是在我的虚拟Centos 7上也装上了git ,现在我主要利用它帮助我管理一些繁琐的小代码,git这样的工具的魅力还需要我慢慢体会. 现在我就记录一下我在Wind

命令行下创建mysql数据库

转载 =======MYSQL简介与概要=================MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,现在已经被Sun公司收购,支持FreeBSD.Linux.MAC.Windows等多种操作系统(1).可以处理拥有上千万条记录的大型数据(2).支持常见的SQL语句规范(3).可移植行高,安装简单小巧(4).良好的运行效率,有丰富信息的网络支持(5).调试.管理,优化简单(相对其他大型数据库)============================

MySQL命令行下查看运行状态

查看MySQL的运行状态用命令行的show语句show status是查看MySQL运行情况,和上面那种通过pma查看到的信息基本类似. show variables是查看MySQL的配置参数,还可以使用类似SHOW VARIABLES LIKE ‘Key%’ show processlist是查看当前正在进行的进程,对于有锁表等情况的排查很有用处.一般情况下,打开MySQL的慢查询记录同样有利于排查. show open tables是显示当前已经被打开的表列表. 用MySQL自带的mysql

Mysql 命令行下建立存储过程

建立存储过程的sql如下: CREATE PROCEDURE  proc_variable () BEGIN DECLARE dec_var_ VARCHAR(100); DECLARE rep_num INT; DECLARE dec_var CURSOR  for SELECT ID_  FROM ACT_RU_VARIABLE WHERE NAME_ = 'yjdqsj' GROUP BY EXECUTION_ID_ HAVING COUNT(NAME_) >1; OPEN dec_var

mysql命令行下执行shell命令方法

[[email protected] ~]# mysql -uroot -p -P3300 Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.5.45-log MySQL Community Server (GPL) Copyright (c) 2000, 2015, Oracle and/or its

window cmd 命令行下创建文件夹和文件

新建文件夹命令: makedir 文件名 新建文件命令: type null> 文件名.文件类型 链接 原文地址:https://www.cnblogs.com/zhourongcode/p/8534802.html

Linux命令行下创建纳入版本控制下的新目录

[[email protected] 资料库]# svn mkdir test A test [[email protected] 资料库]# svn ci -m "mkdir test" Adding 资料库/test Committed revision 175.

如何使用mysql命令行

现在向大家介绍mysql命令行下,从数据库的建立到表数据的删除全过程,希望对网友有所帮助 方法/步骤 1.登陆mysql 打cmd命令终端,如果已经添加了mysql的环境变量,可以直接使用命令 mysql -uroot 直接回车,之后按提示输入密码, 如果未添加mysql的环境变量,可以切换到mysql的安装目录下的bin目录,再使用 mysq -uroot 你也可以手动为mysql添加环境变量.这里就不介绍怎么添加环境变量的方法了 密码输入正确之后,就会出现“Welcome to the My