# 命令行操作Mysql的常用命令-查询
>[success]熟练掌握命令行操作Mysql是十分必要的。
## 1. 连接MYSQL
~~~
mysql -uroot -p
~~~
## 2. 查看数据库列表
~~~
show databases;
~~~
![](https://box.kancloud.cn/2512467ad398bd6cd909700fa290a646_348x280.png)
## 3. 选择数据库
~~~
use 要操作的数据库名称;
~~~
## 4. 查看当前数据库中的表
~~~
show tables;
~~~
![](https://box.kancloud.cn/398c8464ff2c1fbe3723bee0899f6f4d_425x348.png)
## 5. 查看表结构
~~~
desc 要查看的表名;
~~~
![](https://box.kancloud.cn/ee91ce93df791f463dfd946c98a61a7c_928x539.png)
## 6. 查询表中列的注释信息
~~~
select * from information_schema.columns
where table_schema = 'db' #表所在数据库
and table_name = 'tablename' ; #你要查的表
~~~
## 7.只查询列名和注释
~~~
select column_name, column_comment from information_schema.columns where table_schema ='db' and table_name = 'tablename' ;
~~~
## 8.查看表的注释
~~~
select table_name,table_comment from information_schema.tables where table_schema = 'db' and table_name ='tablename'
~~~
## 创建索引
方法一:使用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) ;
~~~
方法二:使用CREATE INDEX语句对表增加索引
~~~
create index index_name on table_name (column_list) ;
create unique index index_name on table_name (column_list) ;
~~~
## 10.删除索引
~~~
drop index index_name on table_name ;
alter table table_name drop index index_name ;
alter table table_name drop primary key ;
~~~
## 11.判断数据表在数据库是否存在
~~~
SHOW TABLES LIKE 'by_currency' ;
//或
drop table 'by_currency' if exists 'by_currency' ;
~~~