zoukankan      html  css  js  c++  java
  • 视图、事务

    ---------------------视图:对查询语句的封装------------------
    --视图就是对sql语句的封装
    create view vw_Emps
    as
    select
        t1.AreaID,
        t1.AreaName,
        t2.AreaNAme  as Area
        from TblArea as t1
        inner join TblArea as t2 on t1.AreaPId=t2.AreaId
    
    go
    select * from vw_Emps
    --视图并不存储数据,视图只是将sql语句封装了一下,所以最执行的还是sql语句,
    --若是表中的数据发生了变化,视图的结果也就变化了
    --降低了数据库的的复杂程度
    --防止未经许可的用户访问的敏感程度
    
    --修改视图 alter view vw_Emps
    --删除视图 drop view vw_Emps
    go
    alter view vw_Emps1
    as
     select Top 90 percent * from TblArea order by AreaId desc--order by 失去意义
    go
    
    select * from TblArea order by AreaId desc --只能在查询视图之外用order by排序

     事务:两个语句同生共死。如银行转账,一个帐号有资金的增加,必须有另一个帐号的资金的减少

    select * from bank
    --手动开启一个事务
    begin tran
        declare @sum int=0;
        update bank set balance=balance-1000 where cId='0002'
        set @sum=@sum+@@ERROR
        update bank set balance=balance+1000 where cId='0001'
        set @sum=@sum+@@ERROR
        if @sum<>0
        begin
            rollback tran
        end
        else
        begin
            commit tran
        end
  • 相关阅读:
    开发之前的思考-UI结构设计
    UI事件监听的击穿
    实战开发中UI资源制作标准
    巧用九宫格以减少UI资源量
    UI元素的相对自适应
    UI开发核心问题-UI随屏幕自适应
    制作滚动视图(ScrollView)
    制作复选框(Toggle)
    制作下拉菜单(PopupList)
    制作输入框(Input)
  • 原文地址:https://www.cnblogs.com/tobecabbage/p/3570161.html
Copyright © 2011-2022 走看看