MySQL:视图和存储过程

看着很多实际很少,仅供学过以后回头查看语法


一、视图

视图是一种虚拟表
可以理解成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;

好记性不如烂笔头

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值