版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaofen_7/article/details/78984896
在数据库中,多个用户同时访问应用程序,应用程序在访问数据库,不允许出现用户直接访问数据库!
用户1
用户2 <——————>应用程序<————>数据库
用户3
开启begin transaction
提交commit
回滚rollback
Save保存部分
语法:
Begin
语句块block
End
事务模式 |
自动提交 |
每条单独的语句,默认 |
显示 |
Begin开始,commit/rollback结束 |
|
隐式 |
前一个完成时隐式启动 commit/rollback |
|
批处理 |
多个活动结果集MARS回话 |
事务——系统请求——数据加锁:多用户并发访问时,保护不受干扰
具体到:行、页、表、盘区、数据库
分类 |
S共享锁(读) |
数据读取完毕 |
X独占锁(写) |
事务结束 |
|
跟新锁(不能加U,X) |
事务结束 |
系统与元数据函数
Convert |
数据类型转换(类型,变量) |
Current user |
返回当前用户名称 |
Isnull |
用一个指定替换值替换任何空值 |
Isnumberic |
1是 0否 |
Isdate |
有效日期判断 |
XACT选项
Set xact_about[on|off]
On:回滚
Off:不严重只回滚错误SQL,严重时回滚
事务包含于存储过