Mysql数据库建立视图的方法

视图创建

创建视图的原因:

  1. 当只想把表中的一部分内容展示给另一个用户,则可以建立一个视图,视图表中的内容是父表中能展示的部分。
  2. 视图和父表可以联动,当父标的内容发生了改变,视图内容也会更着变化。
  3. 可以之间新建一张表,新表也可以取父标的一部分内容展示给用户,但是会存在问题,当父表内容产生改变,子表不会产生变化。
    综上原因:使用视图展示一部分内容给其他用户是一种更好的选择。

子标

创建子表的方法:(会存在上诉第三点问题)
create table tb_emp_simple2
(
eno integer not null,
ename varchar(20) not null,
job varchar(20) not null,
primary key (eno)
);


insert tb_emp_simple2 select eno,ename,job from tb_emp;
将子标的权限给到用户
-- 删除用户
drop user 'pengdingming'@'%';     
-- 创建新用户
create user 'pedingming'@'%' identified by '123Hl46&';
-- 将hrs库中tb_emp_simple2表的select权限给到pedingming
grant select on hrs.tb_emp_simple2 to 'pedingming'@'%';

父表为:tb_emp

在这里插入图片描述
建立出来的子标为:tb_emp_simple2
在这里插入图片描述

视图

创建视图的方法
create view vw_emp_simple2 as 
select eno, ename ,job from tb_emp;
删除视图的方法:
-- 删除视图
drop view vw_emp_simple2;
将视图的权限给到用户
drop user 'pengdingming'@'%';
-- identified后面跟的是用户的密码
create user 'pengdingming'@'%' identified by '123Hcl456&';
grant show view on hrs.vw_emp_simple2 to 'pedingming'@'%';
grant select on hrs.vw_emp_simple2 to 'pedingming'@'%';

父表和前面的父表为同一个表
视图表为:
在这里插入图片描述

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值