Mysql数据库建立视图的方法
程序员文章站
2022-07-12 22:29:50
...
视图创建
创建视图的原因:
- 当只想把表中的一部分内容展示给另一个用户,则可以建立一个视图,视图表中的内容是父表中能展示的部分。
- 视图和父表可以联动,当父标的内容发生了改变,视图内容也会更着变化。
- 可以之间新建一张表,新表也可以取父标的一部分内容展示给用户,但是会存在问题,当父表内容产生改变,子表不会产生变化。
综上原因:使用视图展示一部分内容给其他用户是一种更好的选择。
子标
创建子表的方法:(会存在上诉第三点问题)
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'@'%';
父表和前面的父表为同一个表
视图表为:
推荐阅读
-
MySQL常见内存不足启动失败的完美解决方法
-
Mysql5.7中使用group concat函数数据被截断的问题完美解决方法
-
在oracle 数据库查询的select 查询字段中关联其他表的方法
-
MSSQL中删除用户时数据库主体在该数据库存中拥有架构 无法删除的解决方法
-
mysql 终结点映射器中没有更多的终结点可用的解决方法
-
MSSQL数据库占用内存过大造成服务器死机问题的解决方法
-
实现PHP框架系列文章(6)mysql数据库方法
-
CodeIgniter针对数据库的连接、配置及使用方法
-
mysql 忘记密码的解决方法(linux和windows小结)
-
MySQL 数据库跨操作系统的最快迁移方法