封锁的相容矩阵

封锁的相容矩阵

ID:65501538

大小:123.00 KB

页数:8页

时间:2022-01-09

封锁的相容矩阵_第1页
封锁的相容矩阵_第2页
封锁的相容矩阵_第3页
封锁的相容矩阵_第4页
封锁的相容矩阵_第5页
封锁的相容矩阵_第6页
封锁的相容矩阵_第7页
封锁的相容矩阵_第8页
资源描述:

《封锁的相容矩阵》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、封锁的相容矩阵不相容请求相容请求封锁粒度相容矩阵T1T2ISXI+--S-+-X---封锁粒度更精细的相容矩阵T1T2ISIXSXIS+++-IX++--S+-+-X----封锁粒度ISIXSSIXXISIXSSIXX更精细的相容矩阵举例对于XSCJ数据库,如果在XS表中添加或更改数据,则将向客户端显示一条信息。/*使用带有提示消息的触发器*/USEXSCJIFEXISTS(SELECTnameFROMsysobjectsWHEREname='reminder'ANDtype='TR')DROPTRIGGERreminderGOCREATE

2、TRIGGERreminderONXSFORINSERT,UPDATEASRAISERROR(4008,16,10)GO【例】在数据库XSCJ中创建一触发器,当向XS_KC表插入一记录时,检查该记录的学号在XS表是否存在,检查课程号在KC表中是否存在,若有一项为否,则不允许插入。USEXSCJIFEXISTS(SELECTnameFROMsysobjectsWHEREname='check_trig'ANDtype='TR')DROPTRIGGERcheck_trigGOCREATETRIGGERcheck_trigONXS_KCFORINSERTASSELECT*FROMinserted

3、aWHEREa.学号NOTIN(SELECTb.学号FROMXSb)ORa.课程号NOTIN(SELECTc.课程号FROMKCc)BEGINRAISERROR('违背数据的一致性.',16,1)ROLLBACKTRANSACTIONEND【例】在XSCJ数据库的XS_KC表上创建一触发器,若对学号列和课程号列修改,则给出提示信息,并取消修改操作。USEXSCJGOCREATETRIGGERupdate_trigONXS_KCFORupdateAS/*检查学号列(C0)和课程号列(C1)是否被修改,如果有某些列被修改了,则取消修改操作。*/IF(COLUMNS_UPDATED()&3)>0

4、BEGINRAISERROR('违背数据的一致性.',16,1)ROLLBACKTRANSACTIONENDGO【例】在XSCJ数据库中创建表、视图和触发器,以说明INSTEADOFINSERT触发器的使用。USEXSCJCREATETABLEbooks(BookKeyintIDENTITY(1,1),BookNamenvarchar(10)NOTNULL,Colornvarchar(10)NOTNULL,ComputedColAS(BookName+Color),Pagesint)GO/*建立一个视图,包含基表的所有列*/CREATEVIEWView2ASSELECTBookKey,Bo

5、okName,Color,ComputedCol,PagesFROMbooksGO/*在View2视图上创建一个INSTEADOFINSERT触发器*/CREATETRIGGERInsteadTrigonView2INSTEADOFINSERTASBEGIN/*实际插入时,INSERT语句中不包含BookKey字段和.ComputedCol.字段的值*/INSERTINTObooksSELECTBookName,Color,PagesFROMinsertedENDGO

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。