Mysql数据库(终)-视图,Mysql管理

一.Mysql视图

1.作用

1.1当我们想让用户查询时只能查到一张表上的某些内容(保护其他的敏感数据隐私),可以将这些内容映射成一个视图供用户查询。

1.2由于视图可以根据基表(可以是多个)来创建 ,一定程度上减少了JOIN的使用。

1.3可以将旧表的数据映射成视图,更加灵活,方便管理。       

2.实现原理:视图是虚拟的表,根据基表(可以是多个)来创建,数据来自基表,本质上是同一段数据.

   所有我们不论对二者的那一个进行数据操作时,都会影响(视图的数据变化会影响到基表,基表的数据变化也会影响到视图[insert update delete ]。)

   创建视图后,到数据库去看,对应视图只有一个视图结构文件(形式: 视图名.frm)

3.基本使用

-- 创建视图
CREATE VIEW 视图name
AS
SELECT 表中跳出的允许查看的列 
FROM 表名; 
-- 查看视图
DESC 视图名
SELECT * FROM 视图名;
SELECT 列名a,列名b... FROM 视图名; 
-- 查看创建视图的指令
SHOW CREATE VIEW 视图名
-- 删除视图
DROP VIEW 视图名
--- 视图中可以再使用视图 , 比如从 视图01中,选出 empno,和 ename 字段做出新视图02
CREATE VIEW 视图02
AS
SELECT empno, ename  
FROM 视图01

二.Mysql管理

1.mysql用户

1.1相关信息在mysql系统数据库的user表中,有用户名,密码(password()加密过的),用户是否有各种权限,host(允许用户登录的位置)等等

1.2管理用户的指令

创建用户:create user 用户名@允许登录的位置 identified by 密码

删除用户:drop user 用户名@允许登录的位置

用户修改密码:改自己:set password= password(密码)

              改别人(需要权限)set password for 用户名@允许登录的位置 =  password(密码)

2.mysql管理员(root权限)

2.1给用户授权

GRANT 权限列表xxx,xxx
ON 数据库名.对象名(表,视图,函数等)
TO 用户名@允许登录的位置

[可选设置密码: IDENTIFIED BY 密码]

2.2回收用户权限

REVOKE 权限列表xxx,xxx
ON 数据库名.对象名(表,视图,函数等)
TO 用户名@允许登录的位置

 

posted @ 2022-12-16 11:55  ZitWang  阅读(34)  评论(0)    收藏  举报