文本内容:
事务与并发控制源代码L提交事务sqlplus/nolog connsys/ldm assysdba;grant allon table1to test;insert intotable1values6/Abrabam,;sys用户向表tablel中插入一行值,其中id为6,未提交然后打开另一个窗口,通过具有tablel操作权限的test用户连接数据库,查询表tablel中的数据可以看到,sys插入的新值并没有在结果中显示出来,具体如下所示select*from tablel;sqlplus/nolog conntest/test select*from sys.tablel;在sys用户连接窗口中输入commit,具体如下所示commit;当sys提交完成后,test用户查看tablel中的id为6的行,可以查到sys向表新插入的值,具体如下所示select*from sys.tablel whereid=6;
2.回退全部事务insert intotablel values7/Beck!;delete from tablel whereid=6;rollback;select*fromtablel;
3.回退部分操作delete fromtablel whereid=6;savepoint ptl;update table1set name=Zesx whereid=5;rollback toptl;通过设置保存点,可以选择回退到具体位置上述设置保存点为ptl,且回退到该保存点当选择回退到某保存点时,回退操作只会回退该保存点之后的操作,而不会回退保存点之前的操作,因此查询表tablet时,id为6的记录肯定不存在表中了,具体如下所示
4.设置事务的属性commit;set transactionread only;desc empinf;insert intoempinf values(8;Holon,3000,clerk;财政部);insert intoempinf values(8;Hokn;3000,clerk;财政部);。