欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Mysql数据库建立视图的方法

程序员文章站 2022-07-12 22:29:50
...

视图创建

创建视图的原因:

  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

Mysql数据库建立视图的方法
建立出来的子标为:tb_emp_simple2
Mysql数据库建立视图的方法

视图

创建视图的方法

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'@'%';

父表和前面的父表为同一个表
视图表为:
Mysql数据库建立视图的方法

相关标签: mysql 视图