看着很多实际很少,仅供学过以后回头查看语法
文章目录
一、视图
视图是一种虚拟表
可以理解成select查询语句返回的那个表对象
视图只可以查询,不能修改
1.1 创建视图
create view 视图名 [column_list] as select语句;
create view p_c_v as select * from products p left join category c on p.category_id = c.cid;
1.2 查询视图
当作一张表去操作就行了
二、存储过程
相当于函数
2.1 创建存储过程(无参
delimiter $$
create procedure 过程名称()
begin
-- 要执行的语句
end $$
2.2 创建存储过程(有参
delimiter $$
create procedure 过程名称(in 参数名 参数类型, in 参数名 参数类型 ……)
begin
-- 要执行的语句
end $$
2.3 创建存储过程(带返回值
变量赋值:set @变量名=值
delimiter $$
create procedure orders_proc(in o_oid int, in o_gid int, in o_price int, out out_num int)
begin
insert into orders values(o_oid, o_gid, o_price);
set @out_num = 1;
select @out_num;
end $$
三、MySQL触发器
按照一定条件自动执行的存储过程(函数
3.1 创建触发器
delimiter $
create trigger trigger_Name
before/after (insert/update/delete)
on table_Name
for each row
begin
--事件
end $
四、DCL(数据控制语言)
4.1 创建用户
create user '用户名'@'主机名' identified by '密码';
创建的用户在名字为mysql的数据库中的user表中
4.2 用户授权
grant 权限1,权限2... on 数据库名.表名 to '用户名'@'主机名';
给用户分配所有权限
grant all on *.* to '用户名'@'主机名';
4.3 查看权限
show grants for '用户名'@'主机名';
4.4 删除用户
drop user '用户名'@'主机名';
4.5 查询用户
select * from user;
五、数据库备份和还原
5.1 数据备份
mysqldump -u用户名 -p密码 数据库 > 文件路径
-- 例子
mysqldump -uroot -p1234 db > H:/db.sql
5.2 数据恢复
数据恢复前需要先建一个同名数据库
use db;
source H:/db.sql;
好记性不如烂笔头