




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、實驗四 數(shù)據(jù)的完整性、安全性一、實驗?zāi)康? 掌握數(shù)據(jù)安全性和完整性的概念,以及如何保證數(shù)據(jù)庫中數(shù)據(jù)安全及完整性。2掌握 SQL Server 中有關(guān)用戶、角色及操作權(quán)限的管理方法3 學(xué)會創(chuàng)建和使用規(guī)則、缺省。二、實驗容1 數(shù)據(jù)庫的安全性實驗,通過 SSMS設(shè)置 SQL Server的安全認(rèn)證模式實現(xiàn)對 SQL Server 的用戶和角色管理,設(shè)置和管理數(shù)據(jù)操作權(quán)限2 數(shù)據(jù)庫的完整性實驗。使用 Transact-SQL 設(shè)計規(guī)則、缺省、約束和觸發(fā)器。三、實驗要求1數(shù)據(jù)的完整性實驗用 SQL語句創(chuàng)建一學(xué)生成績數(shù)據(jù)庫 (XSCJ),包括學(xué)生 (XSQK)、課程(KC)和成績表 (XS_KC): 學(xué)生
2、情況表( XSQK)列名數(shù)據(jù)類型長度是否允許為空值學(xué)號Char6N姓名Char8N性別Bit1N出生日期smalldatetime2專業(yè)名Char10所在系Char10聯(lián)系char11Y課程表( KC)列名數(shù)據(jù)類型長度是否允許為空值課程號Char3N課程名Char20N教師Char10開課學(xué)期Tinyint1學(xué)時Tinyint1學(xué)分Tinyint1N成績表( XS KC)列名數(shù)據(jù)類型長度是否允許為空值學(xué)號Char6N課程號Char3N成績Smallint2數(shù)據(jù)的實體完整性實驗 用 SSMS 分別將學(xué)生情況表( XSQK)的學(xué)號字段、課程表( KC)的課程號字段設(shè)置為主健 用 TSQL 語句將成
3、績表( XS_KC)的學(xué)號、課程號字段設(shè)置為主健數(shù)據(jù)的參照完整性實驗用 SSMS為成績表( XS_KC)創(chuàng)建外鍵 FK_ XSQK_ID,外鍵 FK_ XSQK_ID 參照學(xué)生情況 表( XSQK)表的學(xué)號用 T SQL語句成績表(XS_KC)創(chuàng)建外鍵 FK_ KC_ID,外鍵 FK_ KC _ID參照課程表 (KC) 表的課程號數(shù)據(jù)的用戶定義完整性實驗用 TSQL 語句為學(xué)生情況表( XSQK)的姓名列創(chuàng)建一個唯一約束用 SSMS 為學(xué)生情況表( XSQK)的性別列創(chuàng)建一個檢查約束,使得性別的值為男或女0 用 T SQL語句為成績表( XS_KC)的成績列創(chuàng)建一個檢查約束,使得成績的值在(
4、100)之間 用 SSMS 語句課程表( KC)的學(xué)時列創(chuàng)建一個缺省約束,缺省值為60用 T SQL語句課程表( KC)的學(xué)分列創(chuàng)建一個缺省約束,缺省值為2Excel的格式,并分別將其導(dǎo)入數(shù)據(jù)庫的各個表中:將如下數(shù)據(jù)分別轉(zhuǎn)換成文本數(shù)據(jù)或?qū)W生情況表( XSQK):課程表( KC):學(xué)號姓名性別出生日期專業(yè)所在系聯(lián)系020101穎01980-7-20計算機(jī)應(yīng)用計算機(jī)88297147020102方露露01981-1-15計算機(jī)應(yīng)用計算機(jī)88297147020103俞奇軍11980-2-20信息管理計算機(jī)88297151020104國強(qiáng)11980-11-7信息管理計算機(jī)88297151020105薛冰
5、11980-7-29水利工程水利系88297152020201秦盈飛01981-3-10電子商務(wù)經(jīng)濟(jì)系88297161020202董含靜01980-9-25電子商務(wù)經(jīng)濟(jì)系88297062020203偉11980-8-7電子商務(wù)經(jīng)濟(jì)系88297171020204新江11980-7-20房建水利系88297171課程號課程名教師開課學(xué)期學(xué)時學(xué)分101計算機(jī)原理紅2453102計算方法王頤3453103操作系統(tǒng)徐格2604104數(shù)據(jù)庫原理及應(yīng)用應(yīng)對剛3755105網(wǎng)絡(luò)基礎(chǔ)吳江江4453106高等數(shù)學(xué)中文1906107英語剛1906108VB程序設(shè)計紅韋3705成績表( XS_KC)學(xué)號課程號成績02
6、0101101850201011028702010110788020102101580201021026302010410776020202103550202021088002020310357020204103713. 理解默認(rèn)值的概念和作用用語句創(chuàng)建名為 Xi_default ,值為 “計算機(jī)系”的默認(rèn)值將默認(rèn)值 Xi_default 綁定到學(xué)生表中的所在系的屬性列上解除學(xué)生表所在系的屬性列上的默認(rèn)值刪除默認(rèn)值 Xi_default注:創(chuàng)建默認(rèn)值的格式: create default 默認(rèn)值名 as 默認(rèn)值 ' 默認(rèn)值綁定的格式: sp_bindefault 默認(rèn)值名 , <
7、 '表名 .列名 ' 自定義數(shù)據(jù)類型名稱 > 解除默認(rèn)值綁定格式: sp_unbindefault <'表名 .列名'自定義數(shù)據(jù)類型名稱 > 刪除默認(rèn)值格式: Drop default 默認(rèn)值名4.理解規(guī)則的概念和作用 用語句創(chuàng)建規(guī)則 “rule_kkxq ”,用以限制插入該規(guī)則所綁定的列中的值只能取1、2、3、4、 將 “rule_ kkxq ”規(guī)則綁定到課程表的開課學(xué)期屬性上,并執(zhí)行以下語句,看看能否正常執(zhí)行,為什么:Insert into 課程表Values(109,'C 語言 ','方 ',8,64,4)
8、不能正常執(zhí)行 ,因為數(shù)值 8 不在規(guī)則 rule_kkxq 所綁定的數(shù)據(jù)圍 若不解除規(guī)則,能否將規(guī)則 rule_ kkxq 直接刪除? 不能 ,需先解除規(guī)則才能刪除規(guī)則 rule_ kkxq注:創(chuàng)建規(guī)則的格式: create rule 規(guī)則名 as 列名 約束條件 規(guī)則綁定的格式: sp_bindrule 規(guī)則名 , <'表名 .列名 '自定義數(shù)據(jù)類型名稱 > 解除規(guī)則綁定格式: sp_unbindrule <'表名 .列名'自定義數(shù)據(jù)類型名稱 > 刪除規(guī)則格式: Drop rule 規(guī)則名5.數(shù)據(jù)的安全性實驗:(1)設(shè)置 身份驗證模式
9、寫出查看當(dāng)前 SQL Server 身份驗證模式的過程,即查看當(dāng)前 SQL Server 系統(tǒng)到底是采用 Windows 身份驗證還是混合身份驗證模式。服務(wù)器->右鍵"屬性"->選擇"安全性 ",即可查看當(dāng)前 SQL Server系統(tǒng)的服務(wù)器驗證模式 將系統(tǒng)設(shè)置為 Windows 身份驗證模式,重啟 SQL Server,使之生效并驗證重啟SQL Server,使之生效并驗證將系統(tǒng)設(shè)置為混合身份驗證模式創(chuàng)建 和管理 登錄賬戶1)用對象資源管理器創(chuàng)建、查看、刪除SQL Server 登錄賬戶 分別創(chuàng)建兩個登錄帳戶 LoginA 、 LoginA
10、1 ,其登錄密碼分別為: 123456 、456 ,并指定LoginA 登錄默認(rèn)的數(shù)據(jù)庫為學(xué)生成績數(shù)據(jù)庫(XSCJ),指定 LoginA1 登錄默認(rèn)的數(shù)據(jù)庫為 master查看登錄賬戶 LoginA 、 LoginA1刪除登錄賬戶 LoginA12)用 T-SQL 語句創(chuàng)建、查看、刪除 SQL Server 登錄賬戶用系統(tǒng)存儲過程,分別創(chuàng)建兩個登陸帳戶LoginB 、 LoginB1 ,其登錄密碼分別為: 666、888,登錄后然后所連接到的數(shù)據(jù)庫均為學(xué)生成績數(shù)據(jù)庫(XSCJ。)注:創(chuàng)建新的 SQL Server 登錄賬號和登錄密碼的語句為:sp_addlogin loginame =
11、9; login ' / 登錄的名稱 , passwd = ' password ' / 登錄密碼。 , defdb = ' database ' / 登錄的默認(rèn)數(shù)據(jù)庫 (登錄后登錄所連接到數(shù)據(jù)庫)。默認(rèn)設(shè)置為 master 。 例:創(chuàng)建一個登陸帳戶 Login ,登錄密碼為: A,登錄后然后所連接到的數(shù)據(jù)庫 為 master 數(shù)據(jù)庫。mastersp_addlogin 'Login','A',' master或 sp_addlogin loginame ='Login', passwd ='
12、;A', defdb ='使用系統(tǒng)存儲過程 sp_helplogins 查看 SQL Server 登錄賬戶 注:查看登錄賬戶的格式: exec sp_helplogins 使用系統(tǒng)存儲過程 sp_droplogin 從 SQL Server 中將登錄賬戶 LoginB1 刪除注:刪除登錄賬戶的格式: sp_droplogin loginame = ' 登錄名稱 '創(chuàng)建 和管理 數(shù)據(jù)庫用戶1)用對象資源管理器創(chuàng)建、查看、刪除數(shù)據(jù)庫用戶在學(xué)生成績數(shù)據(jù)庫 (XSCJ)中創(chuàng)建數(shù)據(jù)庫用戶 UserA ,使其所對應(yīng)的帳號為 LoginA 能否再創(chuàng)建一個數(shù)據(jù)庫用戶 ABC,
13、使其對應(yīng)登錄的帳號為 LoginA ,若不能寫出其原因? 不能 ,同一個數(shù)據(jù)庫的數(shù)據(jù)庫用戶只能有一個登錄賬戶2)用語句創(chuàng)建、查看、刪除數(shù)據(jù)庫用戶用系統(tǒng)存儲過程 sp_grantdbaccess 在學(xué)生成績數(shù)據(jù)庫 (XSCJ)中創(chuàng)建一個數(shù)據(jù)庫用戶 UserB ,使其所對應(yīng)的登錄帳號為 LoginB注:為 SQL Server 登錄在當(dāng)前數(shù)據(jù)庫中添加一個安全用戶的語句為: sp_grantdbaccess loginame = 'login ' / 當(dāng)前數(shù)據(jù)庫中的登錄賬號,name_in_db = ' name_in_db ' / 數(shù)據(jù)庫中帳戶的用戶名用系統(tǒng)存儲過程
14、 sp_helpuser 查看數(shù)據(jù)庫用戶注:查看數(shù)據(jù)庫用戶的格式: sp_helpuser name_in_db = 'security_account'用系統(tǒng)存儲過程 sp_ revokedbaccess 刪除數(shù)據(jù)庫用戶 ABC1name_in_db = ' name注:刪除數(shù)據(jù)庫用戶的格式: sp_ revokedbaccess創(chuàng)建 和管理 角色1 )服務(wù)器角色 的管理用對象資源管理器將登錄帳戶LoginA 加到 sysadmin的角色中。用系統(tǒng)存儲過程 sp_addsrvrolemember 將登錄帳戶 LoginB 加到 sysadmin 的角色中。注:為登錄賬
15、戶指定服務(wù)器角色的系統(tǒng)存儲過程 sp_addsrvrolemember 的格式為:sp_add srvrolemember ' 登錄賬號 ' ,服務(wù)器角色名稱 用系統(tǒng)存儲過程 sp_dropsrvrolemember 刪除登錄賬戶 LoginA 的服務(wù)器角色 sysadmin注:刪除登錄賬戶的服務(wù)器角色的系統(tǒng)存儲過程 sp_dropsrvrolemember 的格式為:sp_dropsrvrolemember ' 登錄賬號 ' ,服務(wù)器角色名稱2) 數(shù)據(jù)庫角色 的管理用對象資源管理器將數(shù)據(jù)庫用戶 UserA 添加到 db_owner 數(shù)據(jù)庫的角色中用系統(tǒng)存儲過程
16、 sp_addrolemember 將數(shù)據(jù)庫用戶 UserB 添加到 db_owner 數(shù)據(jù)庫角色 中。注:為數(shù)據(jù)庫用戶指定數(shù)據(jù)庫角色的系統(tǒng)存儲過程 sp_addrolemember 的格式為:sp_addrolemember rolename ' role',/ 當(dāng)前數(shù)據(jù)庫角色的名稱 membername = security_account /* 添加到角色的安全帳戶。 security_account 可 以是所有有效的 SQL Server 用戶、SQL Server 角色或 是所有已授權(quán)訪問當(dāng)前數(shù)據(jù)庫的 Microsoft Windows NT? 用戶或組。 */注:
17、刪除數(shù)據(jù)庫用戶的數(shù)據(jù)庫角色的系統(tǒng)存儲過程 sp_droprolemember 的格式為:sp_droprolemember ' 數(shù)據(jù)庫角色名稱 ' ,數(shù)據(jù)庫用戶賬戶3) 用戶 自定義角色 的管理在學(xué)生成績數(shù)據(jù)庫 (XSCJ)中創(chuàng)建一個角色 RoleB 注:在當(dāng)前數(shù)據(jù)庫創(chuàng)建新的角色: sp_addrole rolename = ' role' / 新角色的名稱 , ownername = ' owner ' /* 新角色的所有者, owner 默認(rèn)值為dbo 。 owner 必須是當(dāng)前數(shù)據(jù)庫中的某個用戶或角色 */已授權(quán)訪問當(dāng)前數(shù)據(jù)庫的將用戶 Us
18、erB 加入到自定義的 RoleB 這個角色中注:將數(shù)據(jù)庫戶添加到自定義數(shù)據(jù)庫角色的格式為:sp_addrolemember rolename 'role',/ 當(dāng)前數(shù)據(jù)庫角色的名稱 membername = security_account /* 添加到角色的安全帳戶。 security_account 可以是所有有效的 SQL Server 用戶、 SQL Server 角色或是所有Microsoft Windows NT? 用戶或組 將學(xué)生成績數(shù)據(jù)庫 (XSCJ)中學(xué)生表的 Select 權(quán)限授予 RoleB用帳戶 LoginB 身份登陸,并學(xué)生成績數(shù)據(jù)庫 (XSCJ)中執(zhí)行Create Table Test (aa varchar(10)Select * from 學(xué)生情況表Select * from 成績表 并查看以上各語句能否正常執(zhí)行,為什么?如何才能使不能執(zhí)行的語句執(zhí)行?如果用帳號 LoginA 登陸,上面的語句能否執(zhí)行。不行 ,因為 UserB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國際貨運(yùn)貨物追蹤與物流成本節(jié)約合同
- 犬冠狀病毒病的病原、診斷及免疫研究進(jìn)展
- 2025年變壓器市場發(fā)展現(xiàn)狀
- 河南金杜仲產(chǎn)業(yè)研究院有限公司介紹企業(yè)發(fā)展分析報告
- 2025屆吉林省長春吉大附中力旺實驗中學(xué)七下生物期末監(jiān)測模擬試題含解析
- 公房出售合同范例
- 任期考核合同范例
- 債權(quán)投資轉(zhuǎn)讓合同范例
- 借錢給朋友借款合同范例
- 債務(wù)重組服務(wù)合同范例
- 商業(yè)地產(chǎn)運(yùn)營管理作業(yè)指導(dǎo)書
- 個人信息安全保密協(xié)議
- 六年級數(shù)學(xué)競賽試題及答案(六套)
- DBJ50T-476-2024 市政管網(wǎng)監(jiān)測技術(shù)標(biāo)準(zhǔn)
- 2024-2030年中國智能音箱行業(yè)消費(fèi)態(tài)勢及投資潛力預(yù)測報告
- 反比例函數(shù)函數(shù)K的幾何意義市公開課一等獎省賽課獲獎?wù)n件
- 2024-2030年中國回收聚對苯二甲酸乙二酯(PET)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 會議保障實施方案
- JGJ196-2010建筑施工塔式起重機(jī)安裝、使用、拆卸安全技術(shù)規(guī)程
- 監(jiān)獄餐廳承包協(xié)議
- (正式版)SH∕T 3541-2024 石油化工泵組施工及驗收規(guī)范
評論
0/150
提交評論