• SQL视图与触发器


    视图(虚拟的表)

    select查询出来的结果集可以用as起别名当作虚拟表来使用

    视图只能添加使用不能添加修改

    视图不能建在其他视图上,只能一其他实体表作为基础

    视图表的数据会随实体表的变动而变动


    视图的作用:

    省去写表链接的过程

    可以将两道三个表链接到一起,查询的更形象化一点

    /*============================代码演示=========================*/

    --代码创建视图

    create view shitu2
    as
     select *from Score,grade where Score.Degree between low and upp
    go
    select *from shitu2  --  查询视图里面的数据

    --修改视图
    alter view shitu--修改视图相当于在此创建
    as
     select *from Student
    go

    --删除视图
    drop view shitu

    --触发器---特殊的存储过程,通过增删改数据库表来自动引发
    create trigger TR_Student_Insert
    on student--在那个表上建立触发器
    for insert--insect是添加的意思
    as
    begin
     select *from student
    end
    go

    insert into Student values(303,'杨某','男','19901115','95033')--在次往表里添加数据的时候会自动触发 select *from student 查询语句

    create trigger TR_Student_Delete
    on student
    instead of delete   --delete是删除的意思
    as

    begin
     print '不能删'
    end
    go
    delete from Student --删除student表 (由于触发器的原因没有删除)

    create trigger TR_Student_inseted
    on student
    instead of update--update是修改
    as
    begin
         --大同小异 这里没有写请见谅
    end
    go 

    inserted--只是一个可以临时储存数据的数据表

    deleted--只是一个可以临时储存数据的数据表

    instead of-- 是命令之前触发

    for--是命令之后触发,for还可以写成after

  • 相关阅读:
    8.【原创】使用Java8中的Stream特性筛选数据
    27.【转载】如何避免回表查询,什么是索引覆盖
    17.【转载】广东省2020学位英语考试报考须知
    Java 正则?:?=?!的理解
    集合的优化操作
    ArrayList中remove方法和set(null)的区别
    POI 导入、导出Excel
    JS 跳转到新页面并用post传参
    win 10 如何关闭自动更新
    JSON定义及应用
  • 原文地址:https://www.cnblogs.com/2041388565m/p/4143630.html
Copyright © 2020-2023  润新知