数据库系统实训——实验十——事务
第一部分:樣例庫的應用
事件處理:
1)關閉自動提交功能
語句:
update vendors set vend_name=‘New’ where vend_id=1001;
select * from vendors;
SET @@AUTOCOMMIT=0; #關閉自動提交
update vendors set vend_name=‘New’ where vend_id=1001;
select * from vendors;
截圖:
2)開始事務/結束事務
語句:
START TRANSACTION; # 事務開始
Delete from orderitems Where order_num = 20009;
Delete from orders Where order_num = 20009;
COMMIT; #提交并關閉事務
截圖:
3) 撤銷事務
語句:
SELECT * FROM orders; #查詢顯示所有表記錄
START TRANSACTION;
DELETE FROM orders;
SELECT * FROM orders;
ROLLBACK; # 回滾事務
SELECT * FROM orders;
截圖:
4)使用保留點回滾
語句:
START TRANSACTION;
SAVEPOINT beforeInsertOrder;
Insert into orders values(20009, now(), 10001);
Select * from orders;
SAVEPOINT beforeInsertOrderItem;
Insert into orderitems values(20009, 1, FB, 1, 10);
Select * from orderitems;
ROLLBACK to beforeInsertOrderItem;
Select * from orderitems;
Insert into orderitems values(20009, 1, FC, 1, 2.5);
COMMIT;
截圖:
5)刪除保留點
語句:
RELEASE SAVEPOINT beforeInsertOrder;
截圖:
事務隔離機制:
語句:
SELECT @@transaction_isolation;
截圖:
2)修改隔離級別
語句:
SET [GLOBAL] TRANSACTION ISOLATION LEVEL
SERIALIZABLE
| REPEATABLE READ
| READ COMMITTED
| READ UNCOMMITTED ;
截圖:
第二部分:所選課題數據庫的應用
事件處理:
1)關閉自動提交功能
語句:
update productnotes set prod_id=‘FC’ where note_id=105;
select * from productnotes;
SET @@AUTOCOMMIT=0; #關閉自動提交
update productnotes set prod_id=‘FC’ where note_id=105;
select * from productnotes;
截圖:
2)開始事務/結束事務
語句:
START TRANSACTION; # 事務開始
Delete from productnotes Where note_id = 114;
COMMIT; #提交并關閉事務
截圖:
3) 撤銷事務
語句:
SELECT * FROM productnotes; #查詢顯示所有表記錄
START TRANSACTION;
DELETE FROM productnotes;
SELECT * FROM productnotes;
ROLLBACK; # 回滾事務
SELECT * FROM productnotes;
截圖:
4)使用保留點回滾
語句:
START TRANSACTION;
SAVEPOINT beforeInsertOrder;
Insert into productnotes values(115,‘FC’, now(), ‘txt’);
Select * from productnotes;
SAVEPOINT beforeInsertOrderItem;
Insert into orderitems values(20005, 3, FB, 4, 5.99);
Select * from orderitems;
ROLLBACK to beforeInsertOrderItem;
Select * from orderitems;
Insert into orderitems values(20005, 3, FC, 4, 2.5);
COMMIT;
截圖:
5)刪除保留點
語句:
RELEASE SAVEPOINT beforeInsertOrder;
截圖:
總結
以上是生活随笔為你收集整理的数据库系统实训——实验十——事务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sqlserver存储过程的参数传递注意
- 下一篇: 【面向对象】子系统和包