mysql命令行教程大全,应该是比较详细的。

MySql

连接Mysql

连接远程主机上的Mysql

格式: mysql -h 主机地址 -u 用户名 -p 用户密码               mysql -h 127.0.0.1 -u root -p123

数据库的常用命令

功能 使用方法
查询数据库的版本 MySql -V // mysql --version
启动服务器 net start mysql
关闭服务器 net stop mysql
显示数据库 show databases;
当前选择的数据库 use 数据库名;
显示数据库中的表格 show tabels;
创建数据库 create database <数据库>
删除数据库 drop database <数据库>
查看当前表格结构 desc tablename; // desc table
创建数据表 create table<表名>(<字段1><类型1>…<字段n><类型n>);
删除数据表 drop table<表名>
查询表格中所有的信息 select * from table; select 类是于printf
查询表格中的一些信息 select * from table order id limit 0,2;
表插入数据ew (可插入多条数据) insert into <表名> (<字段1><字段2><字段3>…<字段n>)
删除表中的数据 delete from 表名 where 表达式
修改表中的数据 update 表名 set 字段= 新值。。。 where 条件
增加字段 alter table 表名 add 字段 类型 其他;
删除字段 alter able 表名 drop column 字段 ;
修改字段或者列的顺序 alter table 表名 modify 字段 类型 位置
alter tabel teacher modify id int(4) first;
alter table teacher mofify name char(20) first id;
修改表名 rename table 原表名 to 新表名

mysql 其他用法

1."+" 的作用

  MySQL中“+”只是运算符,不能进行连接



2. 连接函数
  concat(str,str,....,);



3. 起别名 
  * select  name AS 名字 from  sheet1;

  * 使用空格   select name 名字 from  sheet1;



4. 去重

  加上distinct   select distinct  id from sheet1;

条件查询

简单条件运算符 < > <> != <= >= <=>

逻辑运算符

&& and

|| or

! not

模糊查询

like 一般搭配通配符使用 select * from sheet1 where id like ‘4_’;

between and

in

is null / is not null

通配符 : % 表示任意多个字符 下划线 任意单个字符

排序查询

select * from tables {where 筛选条件} order by 排类列表  [asc | desc];


注意
	asc 是升序  | desc 是降序   (默认是升序)
	
	select * from test order by id desc ;
	
	


创建一个数据库和表格

*先创建一个数据库
*判断他是否存在
drop database if exist school;
create database school;
use school;

*创建一个表格
create table teacher(
	id int(3) auto_increment not null primary key,
   	name char(10) not null,
  	address varchar(50)default "深圳",
    year date
);

*查看表格的结构
desc teacher;
/*
+---------+-------------+------+-----+---------+----------------+
| Field   | Type        | Null | Key | Default | Extra          |
+---------+-------------+------+-----+---------+----------------+
| id      | int(3)      | NO   | PRI | NULL    | auto_increment |
| name    | char(10)    | NO   |     | NULL    |                |
| address | varchar(20) | YES  |     | 深圳    |                |
| year    | date        | YES  |     | NULL    |                |
+---------+-------------+------+-----+---------+----------------+
*/

*插入数据
*可单行插入数据
insert into teacher(name,address,year) values ("rosy","衡南一中",'2000-10-10');
/*
+----+------+----------+------------+
| id | name | address  | year       |
+----+------+----------+------------+
|  9 | rosy | 衡南一中 | 2000-10-10 |
+----+------+----------+------------+
*/
*也可多行插入数据
insert into teacher(name,address,year) values("lihua","北京一中","2000-11-12"),
	("litao","上海一中","2000-11-13"),
	("litao2","长沙一中","2000-10-12");
	/*
+----+--------+----------+------------+
| id | name   | address  | year       |
+----+--------+----------+------------+
|  9 | rosy   | 衡南一中 | 2000-10-10 |
| 10 | lihua  | 北京一中 | 2000-11-12 |
| 11 | litao  | 上海一中 | 2000-11-13 |
| 12 | litao2 | 长沙一中 | 2000-10-12 |
+----+--------+----------+------------+
*/

*修改表格名字
rename table teacher to student;


*增加字段
alter table student add QQ int(20);
/*
+---------+-------------+------+-----+---------+----------------+
| Field   | Type        | Null | Key | Default | Extra          |
+---------+-------------+------+-----+---------+----------------+
| id      | int(3)      | NO   | PRI | NULL    | auto_increment |
| name    | char(10)    | NO   |     | NULL    |                |
| address | varchar(20) | YES  |     | 深圳    |                |
| year    | date        | YES  |     | NULL    |                |
| QQ      | int(20)     | YES  |     | NULL    |                |
+---------+-------------+------+-----+---------+----------------+
*/

批量增加字段
alter table student add (xing char(20),ming char(20));


*删除字段
alter table student drop column QQ;
/*
+---------+-------------+------+-----+---------+----------------+
| Field   | Type        | Null | Key | Default | Extra          |
+---------+-------------+------+-----+---------+----------------+
| id      | int(3)      | NO   | PRI | NULL    | auto_increment |
| name    | char(10)    | NO   |     | NULL    |                |
| address | varchar(20) | YES  |     | 深圳    |                |
| year    | date        | YES  |     | NULL    |                |
+---------+-------------+------+-----+---------+----------------+
*/


*修改字段的大小
alter table stuent modify column id int(4);
/*
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | int(4)      | NO   | PRI | NULL    |       |
| name    | char(10)    | NO   |     | NULL    |       |
| address | varchar(20) | YES  |     | 深圳    |       |
| year    | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
*/


*修改字段的名称
alter table student change id no int(4);
/*
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| no      | int(4)      | NO   | PRI | NULL    |       |
| name    | char(10)    | NO   |     | NULL    |       |
| address | varchar(20) | YES  |     | 深圳    |       |
| year    | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
*/

*修改字段或者列的顺序
1.使该字段变成第一位
alter table student modify year date first;
/*
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| year    | date        | YES  |     | NULL    |       |
| no      | int(4)      | NO   | PRI | NULL    |       |
| name    | char(10)    | NO   |     | NULL    |       |
| address | varchar(20) | YES  |     | 深圳    |       |
+---------+-------------+------+-----+---------+-------+
*/
2.使该字段移动到另一个字段的后面
alter table student modify year date after address;
/*
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| no      | int(4)      | NO   | PRI | NULL    |       |
| name    | char(10)    | NO   |     | NULL    |       |
| address | varchar(20) | YES  |     | 深圳    |       |
| year    | date        | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
*/

*修改表中的数据
update student set name = "壮壮虎" where name = "rosy";
/*
+----+--------+----------+------------+
| no | name   | address  | year       |
+----+--------+----------+------------+
|  9 | 壮壮虎 | 衡南一中 | 2000-10-10 |
| 10 | lihua  | 北京一中 | 2000-11-12 |
| 11 | litao  | 上海一中 | 2000-11-13 |
| 12 | litao2 | 长沙一中 | 2000-10-12 |
+----+--------+----------+------------+
*/

*删除表中的数据
delete from student where name = "litao2";
/*
+----+--------+----------+------------+
| no | name   | address  | year       |
+----+--------+----------+------------+
|  9 | 壮壮虎 | 衡南一中 | 2000-10-10 |
| 10 | lihua  | 北京一中 | 2000-11-12 |
| 11 | litao  | 上海一中 | 2000-11-13 |
+----+--------+----------+------------+
*/
delete from student ;
/*
Empty set (0.00 sec)
*/

*删除表
drop table student;

*删除数据库
drop database school;

导出数据库

* 数据库的导出
1.首先进入Mysql安装的bin目录下,并执行cmd命令

2.输入导出数据库的命令(切记这是在cmd命令中,不是在mysql中)
   方式一:mysqldump -u root -ppassword 数据库 > database_name.sql
   方式二:mysqldump -u root -p dbName > 想要导出的目录
   
	列一:mysqldump -u root -p123456 test >one_test.sql
	列二:mysqldump -u root -p123456 test >D:\mysql-8.0.12-winx64\dump.sql
	
*数据库表格的导出
1.首先进入Mysql安装的bin目录下,并执行cmd命令

2.输入导出数据库表格的命令(切记这是在cmd命令中,不是在mysql中)

	 mysqldump -u 用户名 -p数据库名 表名>导出的文件名
	  mysqldump -u user_name -p database_name table _name >outfile_name.sql


导入数据库

1.将数据库.sql 文件移至 Mysql安装的bin目录下(这样比较方便)

2.在该目录下进入cmd命令

3.进入MySQL

3.找到目标数据库

4.输入 use 目标数据库

5.导入文件:  mysql:source 导入文件名;

(导入表格同理)

你可能感兴趣的:(Mysql)