MSSQL 之事务订单存储过程

1. 赋值   set  或者 select 运算符

2.全局,局部变量区别,生命域 (全局变量用户不能定义)

3.@@identity  返回最后插入行的标识列的列值。   

4.delete 只删除了数据而已,表结构表约束触发器仍然爱还在

5. select score,

    case

    when score>90  then '优秀'

     when score>80  then '良好'

     when score>70  then  '不错'

           else '要加把劲了孩子'

           end

6.waitfor  delay  '01:00' 等待一小时,最多24小时,可以精确到小时,分钟秒

   waifor   time   '11:00' 等待11点再执行后面的语句

命令:alt+break 停止执行

7. dml 数据操纵语言,进行插入,修改,删除

   dcl  数据控制语言,用户权限,比如将某表的插入,删除权限赋予某用户

8. 事务的属性 acid; 事务恢复和检查点机制。为了减少磁盘读写,将合适的数据放到缓存中。当你写入数据的时候,会写到事务日志中,系统会在检查点检查是否有变动,然后提交到数据库中,至于这个检查点的相隔多少时间是根据当前系统的使用情况,比如有多少人在使用,是否繁忙等等。当然可以使用checkpoint强制检查点检查,

将当前数据库的全部脏页写入磁盘。“脏页”是已输入缓存区高速缓存且已修改但尚未写入磁盘的数据页。CHECKPOINT 可创建一个检查点,在该点保证全部脏页都已写入磁盘,从而在以后的恢复过程中节省时间。

出于性能方面的考虑,数据库引擎对内存中数据库页进行修改,但在每次更改后不将页写入磁盘。不过,数据库引擎需要定期执行检查点,以将这些脏页写入磁盘。将脏页写入磁盘时会创建一个已知的正常点,在意外关闭或发生故障后进行恢复的过程中,数据库引擎可以从该点开始应用日志中所包含的更改。有关详细信息,请参阅检查点和日志的活动部分。

1)显示事务  begin tran

2)隐式事务  set implict_transaction on

                  --commit transaction

9. 死锁的4个必要条件

1)例子人为制造死锁

rollback 或者commit 解锁

死锁的排查 

减少死锁3个策略

原文地址:https://www.cnblogs.com/StudyLife/p/3681969.html