Msyql语句进阶整理

Msyql语句进阶整理:

在这里插入图片描述

Mysql基础命令语句
修改数据表
alter table 表名 add 字段名 列类型 [not null|null][primary 000key][unique][auto_increment][default value]
alter table 表名 add 字段定义 after ar_id;

查询数据
在这里插入图片描述

删除字段:
alter table 表名 drop 字段名
修改字段:
alter table 表名 modify 字段名 字段新类型
完整修改字段:
alter table 表名 change 旧字段名称 新字段定义
修改表名称
alter table 表名 rename 新名字
删除表
drop table [if (not) exists] 表名;
表中行的操作
insert
insert [into] 数据表名称 [(字段列表)] values|value (表达式|null|default,…),(表达式|null|default,…)
insert [into] 数据表名称 set 字段名称=值,…
insert与insert…set的区别是后者可以带有子查询。
update – 单表
update 表名 set 字段名称=值,… [where 条件]
如果省略WHERE条件将更新全部记录。
删除记录 – 单表
delete from 数据表名称 [where 条件]
如果省略where条件,将删除全部记录
常用SELECT命令
使用select命令查看mysql数据库系统信息:
– 打印当前的日期和时间
select now();
– 打印当前的日期
select curdate();
– 打印当前的时间
select curtime();
– 打印当前数据库
select database();
– 打印MySQL版本
select version();
– 打印当前用户
select user();
–查看系统信息
查看系统设置:
SHOW [GLOBAL | SESSION] VARIABLES [like_or_where]
SHOW VARIABLES: shows the values of MySQL system variables.
例如:
show variables;
show global variables;
show global variables like ‘%version%’;
show variables like ‘%storage_engine%’; 默认的存储引擎
show engines;查看支持哪些存储引擎
like模糊搜索还可用于where字句,例如
查询students表中姓li的所有学生信息
mysql> use db3;
mysql> select * from students where name like ‘li%’;
在这里插入图片描述

除了like 还有not like,查询students表中不姓li的学生
mysql> select * from students where name not like ‘li%’;
在这里插入图片描述
–查看系统运行状态信息
运行状态:
SHOW [GLOBAL | SESSION] STATUS [like_or_where]
SHOW STATUS: provides server status information.
例如:
mysql> show status; #查看mysql系统运行状态信息
mysql> show global status like ‘Thread%’;
mysql> show processlist;

在这里插入图片描述

导出,导入数据库mysqldump
使用mysql提供的mysqldump工具来导入导出数据库,可以实现数据库的备份和还原。
导出数据库 (备份数据库)
导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名
[root@cong11 ~]# mysqldump -u root -p123456 HA>HA.sql
导入数据库 (还原数据库)
导入数据库
导入前先模拟将要还原的数据库删除
[root@cong11 ~]# mysql -e ‘drop database HA2’ -uroot -p123456
导入数据库(还原数据库)
[root@cong11 ~]#mysql -e ‘create database HA2’ -uroot -p123456
或者登陆 mysql 创建数据库
mysql> create database HA2;
导入(方法一)
在shell命令行执行导入命令,不推荐,暴露了密码,一般这种方法用于脚本自动化执行比较多。
[root@cong11 ~]# mysql -uroot -p123456 HA2 < HA.sql
[root@cong11 ~]# mysql -uroot -p123456
mysql> use HA2;
mysql> show tables;
±--------------+
| Tables_in_HA2 |
±--------------+
| students |
±--------------+
1 row in set (0.00 sec)
导入(方法二)
进入到mysql数据库,添加sql文件,推荐使用此方法,安全
mysql> create database HA2;
mysql> use HA2;
mysql> source /root/HA.sql #sql脚本的路径
mysql> show tables;
±--------------+
| Tables_in_HA2 |
±--------------+
| students |
±--------------+
1 row in set (0.00 sec)

猜你喜欢

转载自blog.csdn.net/weixin_44547481/article/details/112853170