mysql-视图

本文详细介绍了MySQL数据库的三个高级特性:视图、存储过程和触发器。视图主要用于权限控制,提供了一种安全访问数据的方式;存储过程是一组预编译的SQL代码,可用于执行特定任务,支持参数传递,分为不同类型的参数类型;触发器则是在特定数据库事件发生时自动执行的相关操作,如插入、更新或删除记录时。这些特性增强了数据库的功能性和安全性。
摘要由CSDN通过智能技术生成

一.MySQL视图
    1.定义:视图就是一条select语句执行后返回的结果集
    2.使用场景:权限控制的时候,不希望用户访问表中某些含敏感信息的列,比如salary工资
    3.语法(创建):create view 视图名称
                    as
                    select 语句
          (修改):alter view 视图名称
                    as
                    select 语句
          (删除):drop view if exists 视图名称; 先判断是否存在再进行删除
    4.查看 show tables;
      注意:视图创建成功后可以在表展示中显示,但实际不存在,相当于一个虚拟表,使用方法按照表操作进行
二.MySQL存储过程
    1.定义:存储在数据库当中可以执行特定工作(查询和更新)的一组SQL代码的程序段。类似于功能函数
    2.语法(创建):create procedure 存储过程名称(参数列表)
                    begin
                    存储操作的语句块;
                    end
            注意:当语句结束;有冲突时使用delimiter定义新的结束方法
          (调用):call 存储过程名称;
          (有参调用):call 存储过程名称(参数1的值,参数2的值,..);
          (查看所有的存储过程):show procedure status;
          (删除存储过程):drop procedure if exists 存储过程名称;
    3.参数
        ①in 给参数传入值,定义的参数就得到了值
        语法:in 参数名 表中字段的类型
        ②out 返回值
        语法:out 参数名 返回的数据类型
    4.存储过程分为
        ①无参无返回值的存储过程
        ②有参无返回值的存储过程
        ③无参有返回值的存储过程
        ④有参有返回值的存储过程
三.MySQL触发器
    1.定义:当一件事情发生的时候会引发其他相关的事件发生
            只有当一个预定义的事件发生的时候,就会被MySQL自动调用
    2.语法:(创建):create trigger 触发器名称{before|after}{inster|update|delete} on 表名
                      for each row
                      begin
                      触发器执行的语句块
                      end
              注意:当语句结束;有冲突时使用delimiter定义新的结束方法
            (查看所有的触发器):show triggers;
            (删除存储过程):drop trigger if exists 触发器名称;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值