《南京郵電大學(xué) 數(shù)據(jù)庫系統(tǒng) 實驗二參考答案》由會員分享,可在線閱讀,更多相關(guān)《南京郵電大學(xué) 數(shù)據(jù)庫系統(tǒng) 實驗二參考答案(6頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流
南京郵電大學(xué) 數(shù)據(jù)庫系統(tǒng) 實驗二參考答案
.....精品文檔......
實 驗 報 告
( 20/ 20 學(xué)年 第 學(xué)期)
課程名稱
數(shù) 據(jù) 庫 系 統(tǒng)
實驗名稱
DBMS的數(shù)據(jù)庫保護
實驗時間
年
月
日
指導(dǎo)單位
計算機學(xué)院軟件工程系
指導(dǎo)教師
張少嫻
學(xué)生姓名
班級學(xué)號
學(xué)院(系)
計算機學(xué)院
專 業(yè)
信息安全
實 驗 報 告
實驗名稱
DBMS的數(shù)據(jù)庫保護
指導(dǎo)教師
張少嫻
實驗類型
上機
實驗
2、學(xué)時
2*2
實驗時間
一、 實驗?zāi)康暮鸵?
(1)鞏固事務(wù)的概念
(2)正確理解并發(fā)及鎖機制
(3)熟悉DBMS的安全機制
二、實驗環(huán)境(實驗設(shè)備)
硬件:微機
軟件:ORACLE 8i或9i
三、實驗原理及內(nèi)容
1.創(chuàng)建用戶U1和U2
實現(xiàn)過程:
以DBA的身份進入SQL *Plus system/oracle
create user u1 identified by b04041006;
grant connect,resource to u1;
create user u2 identified by b04041006;
gr
3、ant connect,resource to u2;
2.對系統(tǒng)中scott用戶的員工(emp)表,用授權(quán)機制完成以下存取控制
(1)所有用戶具有對員工編號empno,姓名enmae和所在部門depno的查詢權(quán)限
實現(xiàn)過程:
以scott的身份進入SQL *Plus 建立視圖
connect scott/tiger
實 驗 報 告
create view emp_view(empno,ename,deptno)
as select empno,ename,deptno
4、from emp;
授予權(quán)限
grant select on emp_view to public;
(2)使用戶U1擁有對表emp的刪除權(quán)限和對獎金comm的修改權(quán)限,并具備轉(zhuǎn)授這些權(quán)限的權(quán)力
實現(xiàn)過程:
grant delete,update(comm) on emp to u1 with grant option;
(3)用戶U1授予用戶U2對員工表的刪除權(quán)限
實現(xiàn)過程:
以u1的身份進入SQL *Plus
connect U1/b04041006
grant delete on scott.emp to u2;
(4)回
5、收用戶U1和用戶U2對員工表的刪除權(quán)限
實現(xiàn)過程:
以scott的身份進入SQL *Plus
connect scott/tiger
revoke delete on emp from u1;
3.為自己的用戶授予對scott用戶的員工表emp的所有操作權(quán)
實現(xiàn)過程:
以scott的身份進入SQL *Plus scott/tiger
grant all privileges on emp to U1 with grant option;
4.觀察多事務(wù)并發(fā)時的數(shù)據(jù)保護
(1)分別以scott和自己的用戶名登錄到SQL PLUS,并分別輸入命令set auto of
6、f
SQL> connect scott/tiger;
SQL> set auto off;
在另一個SQL PLUS窗口
SQL> connect U1/b04041006;
SQL> set auto off;
設(shè)7782號員工也是10號部門員工,工資初始值為2450;
(2)scott將 emp表中10號部門所有員工的工資 (sal)增加200元,此即事務(wù)1
SQL> update emp
set sal=sal+200 where deptno=10;
此時,查詢到的7782號員工的SAL為多少?
(3)在以自己的用戶登錄的SQL PLUS窗口將emp表中
7、的工號以77開頭的員工工資增加300元,此即事務(wù)2
SQL> update scott.emp
set sal=sal+300 where empno like '77%';
(4)觀察發(fā)生了什么現(xiàn)象,分析為什么,找出解決的辦法
(寫出現(xiàn)象,包括具體更新的記錄數(shù));
解除事務(wù)2掛起的方法是,在scott窗口中鍵入命令commit或是rollback,結(jié)束事務(wù)1
(5)scott輸入commit命令,觀察兩個SQL* PLUS界面的信息變化,并用select語句查看emp表中的sal屬性值的變化
在scott界面輸入commit命令后
記錄實驗現(xiàn)象,同上)
SQ
8、L〉select sal from emp where deptno=10 and empno like ‘77%';
U1界面:
SQL〉select sal from scott.emp where deptno=10 and empno like ‘77%';
;
SQL〉commit;
兩個窗口顯示的查詢結(jié)果是
(請按實際的實驗結(jié)果記錄變化)
(6)重復(fù)1-4步,再觀察scott輸入rollback命令時,兩個SQL * PLUS界面的信息及變化,并用select語句察看emp表中的sal屬性的值的變化
SCOTT用戶事務(wù)
UPDATE后,查詢的SAL?
自己用戶事務(wù)發(fā)出更新命令,現(xiàn)象?
COMMIT
現(xiàn)象?查詢的SAL?
查詢的SAL?
COMMIT
查詢的SAL?
查詢的SAL?
開始新事務(wù)
開始新事務(wù)
UPDATE后,查詢的SAL?
發(fā)出更新命令,現(xiàn)象?
ROLLBACK
現(xiàn)象?查詢的SAL?
查詢的SAL?
COMMIT
查詢的SAL?
查詢的SAL?
實 驗 報 告