MySQL中的权限管理及视图操作

权限管理案例

#创建用户名为kaka密码为123的用户

CREATE USER ‘kaka’ IDENTIFIED BY ‘123’;

#授权

#对kaka开放stu表的授权

GRANT ALL ON companydb.stu TO ‘kaka’;

#对kaka开放所有表的授权

GRANT ALL ON companydb.* TO ‘kaka’;

#撤销

#撤销kaka对stu表的权限

REVOKE ALL ON companydb.stu FROM ‘kaka’;

#删除kaka用户

DROP USER ‘kaka’;

视图

=====================================================================

概念

是一个虚拟表,只操作部分数据;从一个表中或多个表中查询出来的结果表,作用和真实表一样,包含一系列的带有行和列的数据。视图中,可以使用SELECT语句查询数据,也可以使用INSERT、UPD
ATE、DELETE修改记录,视图可以使用户操作方便,并保障了数据库系统安全;

视图特点
  • 优点

  • 简单化,数据所见即所得;

  • 安全性,只能查询或修改视图中锁能见到的数据;

  • 逻辑独立性,可以屏蔽真实表结构变化带来的影响;

  • 缺点

  • 性能相对较差,简单的查询会稍微复杂;

  • 修改不方便,当视图的数据时复杂的聚合视图时,无法修改;

视图的操作
  1. 创建视图

语法:CREATE VIEW 视图名 AS 查询数据源表的语句;

#创建一个t_empinfo视图,该视图的数据是员工姓名,邮箱,手机号码

CREATE VIEW t_empinfo

AS

SELECT FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees;

  1. 使用视图

#使用视图

#查询

SELECT * FROM t_empinfo WHERE FIRST_NAME=‘Steven’ AND LAST_NAME=‘King’;

#修改 只能修改得到的

UPDATE t_empinfo SET email = ‘Kings’ WHERE FIRST_NAME=‘Steven’ AND LAST_NAME=‘King’;

  1. 视图的修改

方式一:CREATE OR REPLACE VIEW 视图名 AS 查询源表的语句;

方式二:ALTER VIEW 视图名 AS查询源表的语句;

#视图的修改

#方式1:存在就替换数据,不存在就新建

CREATE OR REPLACE VIEW t_empinfo

AS

SELECT employee_id,FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees;

#方式2

ALTER VIEW t_empinfo

AS

SELECT FIRST_NAME,LAST_NAME,email,PHONE_NUMBER FROM t_employees;

  1. 视图的删除

语法:DROP VIEW 视图名

#删除t_empinfo视图

DROP VIEW t_empinfo;

  • 删除视图不会影响原表的数据
  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值