並行性 -允許多個用戶訪問同一數據 一致性 - 一次只允許一個用戶修改數據 完整性 - 為所有用戶提供正確的數據。如果一個用戶進行了修改並保存,所做的修改將反映給所有用戶
SELECT … FOR UPDATE [OF columns]
[WAIT n | NOWAIT];
SELECT * FROM order_master WHERE vencode='V002' FOR UPDATE OF odate, del_date; UPDATE order_master SET del_date='28-8月-05' WHERE vencode=’V002’; COMMIT;
SELECT * FROM order_master WHERE vencode='V002' FOR UPDATE WAIT 5;
SELECT * FROM order_master WHERE vencode='V002' FOR UPDATE NOWAIT;
使用表級鎖使用命令顯示地鎖定表,應用表級鎖的語法是:
LOCK TABLE table_name IN mode MODE;
Lock table emp in row share mode;
Lock table emp in row exclusive mode;
--第一步:用戶1 update emp2 set sal=sal+25 where empno=7782; --第二步:用戶2 update emp2 set sal=sal+25 where empno=7566; --第三步:用戶1 update emp2 set sal=sal+25 where empno=7566; --第四步:用戶2 update emp2 set sal=sal+25 where empno=7782; --產生死鎖!!Oracle 自動解鎖!