下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
實驗三數(shù)據(jù)庫完整性一、實驗?zāi)康?、理解并掌握關(guān)系的三類數(shù)據(jù)完整性的概念以及域完整性含義;2、理解并掌握PRIMARYKEY、CHECK、FOREIGNKEY-REFERENCES、NOTNULL、UNIQUE等關(guān)鍵字的含義及規(guī)則;3、掌握使用SQL語句完整性的設(shè)置。二、實驗內(nèi)容1、練習(xí)使用SQL語句設(shè)置PRIMARYKEY、NOTNULL、UNIQUE、CHECK、FOREIGNKEY約束;2、練習(xí)約束的查看;3、練習(xí)使用SQL語句刪除約束。三、實驗步驟1、以SCOTT賬戶登錄ORCL數(shù)據(jù)庫(1)首先運(yùn)行CMD,執(zhí)行SQLPLUSSYS/Oracle11ASSYSDBA;啟動SQL*PLUS,登錄到ORCL數(shù)據(jù)庫。(2)執(zhí)行CONNECTSCOTT/tiger;連接到ORCL數(shù)據(jù)庫。(3)使用SQL創(chuàng)建表:Student、SC、Course,表結(jié)構(gòu)如實驗二所示。(4)向Student、SC、Course表中插入實驗二所示的記錄。2、主鍵約束(1)使用ALTERTABLE設(shè)置主鍵,約束名:PK_SNOCNO①創(chuàng)建表SC1,結(jié)構(gòu)如下:snovarchar(12)cnovarchar(3)gradenumber(3)②用命令A(yù)LTERTABLE設(shè)置(SNO,CNO)為主鍵,約束名為PK_SNOCNO③數(shù)據(jù)驗證,插入一條記錄指定SNO,CNO為NULL進(jìn)行數(shù)據(jù)驗證。(2)分別設(shè)計一個Student、Course表的主鍵屬性為NULL和主鍵值重復(fù)的驗證記錄。3、UNIQUE約束(1)用CREATETABLE創(chuàng)建表STUDENT2,并設(shè)置sname為唯一約束,結(jié)構(gòu)如下:snovarchar(12)主鍵snamevarchar(8)UNIQUEsagenumber(3)Ssexvarchar(2)Sdeptvarchar(20)插入兩條記錄指定Sname為重復(fù)的值,進(jìn)行UNIQUE數(shù)據(jù)驗證。(2)使用ALTERTABLE設(shè)置UNIQUE約束=1\*GB3①使用ALTERTABLE設(shè)置STUDENT的SNAME為UNIQUE約束,約束名為:UQ_SN=2\*GB3②數(shù)據(jù)驗證插入一條記錄指定Sname為重復(fù)的值,進(jìn)行UNIQUE數(shù)據(jù)驗證。③刪除約束:UQ_SN4、設(shè)置NOTNULL約束(1)用CREATETABLE創(chuàng)建表STUDENT3,并設(shè)置sname為非空約束,結(jié)構(gòu)如下:snovarchar(12)主鍵snamevarchar(8)NOTNULLsagenumber(3)Ssexvarchar(2)Sdeptvarchar(20)插入一條條記錄指定Sname為NULL,進(jìn)行NOTNULL約束數(shù)據(jù)驗證(2)使用ALTERTABLE設(shè)置NOTNULL約束①使用ALTERTABLE設(shè)置STUDENT3表中SDEPT為NOTNULL約束,約束名為:SDNL②數(shù)據(jù)驗證插入一條記錄指定Sdept為NULL,進(jìn)行NULL數(shù)據(jù)驗證。③刪除約束:SDNL5、設(shè)置CHECK約束(1)用CREATETABLE創(chuàng)建表STUDENT4,并設(shè)置sage的檢查條件:SAGE<=70ANDSAGE>=18,結(jié)構(gòu)如下:snovarchar(12)主鍵snamevarchar(8)sagenumber(3)Ssexvarchar(2)Sdeptvarchar(20)進(jìn)行數(shù)據(jù)驗證CHECK約束插入一條記錄指定Sage為18-70之外的值,進(jìn)行CHECK數(shù)據(jù)驗證。(2)使用ALTERTABLE設(shè)置CHECK約束①使用ALTERTABLE設(shè)置SC表中GRADE檢查條件:GRADE<=100ANDGRADE>=0,約束名為:SCCK②數(shù)據(jù)驗證插入一條記錄指定Grade為0-100之外的值,進(jìn)行CHECK數(shù)據(jù)驗證。③刪除約束:SCCK(3)設(shè)置student的檢查約束,約束的名稱為sexchk,條件:性別只能為男和女。仿照上面并設(shè)計一個數(shù)據(jù)驗證記錄。6、設(shè)置FOREIGNKEY約束(1)CREATETABLE設(shè)置FOREIGNKEY約束,執(zhí)行如下命令:=1\*GB3①createtableZY(zyhchar(2)primarykey,zymchar(20));=2\*GB3②createtableXSZY(xhchar(10)PRIMARYKEY,xmchar(8),nlnumber(3),zyhchar(2)constraintcon_xszreferenceszy(zyh))=3\*GB3③向ZY表和XSZY表插入如下記錄:=4\*GB3④數(shù)據(jù)驗證:在XSZY中插入外鍵值在ZY主鍵值(ZYH)中不存在的記錄:INSERTINTOXSZYVALUES(‘004’,’趙六’,19,‘04’);?在XSZY中修改外鍵值在ZY主鍵值(ZYH)中不存在的記錄:UPDATEXSZYSETZYH=’07’WHEREXH=’001’;?=5\*GB3⑤刪除約束con_xsz(2)使用ALTERTABLE設(shè)置FOREIGNKEY約束=1\*GB3①檢查STUDENT表和SC表主鍵-外鍵數(shù)據(jù)是否有沖突SELECT*FROMSTUDENTSELECT*FROMSC=2\*GB3②設(shè)置SC的Sno為外鍵,該外鍵參照Student的主鍵(Sno),約束名位fksno1。=3\*GB3③數(shù)據(jù)驗證刪除主表的記錄(從表有對應(yīng)的記錄):修改主表的記錄(從表有對應(yīng)的記錄):修改子表的記錄(主表沒有對應(yīng)的記錄):刪除子表的記錄(主表有對應(yīng)的記錄):=4\*GB3④查看數(shù)據(jù),執(zhí)行如下命令,查看規(guī)則是否起作用:SELECT*FROMSTUDENTSELECT*FROMSC⑤回滾數(shù)據(jù):ROLLBACK⑥刪除約束FKSNO1:(3)使用ALTERTABLE設(shè)置FOREIGNKEY約束:ONDELETE規(guī)則①檢查STUDENT表和SC表主鍵-外鍵數(shù)據(jù)是否有沖突SELECT*FROMSTUDENTSELECT*FROMSC②設(shè)置SC的Sno為外鍵,該外鍵參照Student的主鍵(Sno),約束名位fksno2,約束規(guī)則為:ONDELETE。③數(shù)據(jù)驗證刪除主表的記錄(從表有對應(yīng)的記錄):修改主表的記錄(從表有對應(yīng)的記錄):修改子表的記錄(主表沒有對應(yīng)的記錄):刪除子表的記錄(主表有對應(yīng)的記錄):④查看數(shù)據(jù),執(zhí)行如下命令,查看規(guī)則是否起作用:SELECT*FROMSTUDENTSELECT*FROMSC⑤刪除約束FKSNO2:(4)使用ALTERTABLE設(shè)置FOREIGNKEY約束:ONDELETESETNULL規(guī)則=1\*GB3①檢查ZY和XSZY數(shù)據(jù)是否有沖突SELECT*FORMZYSELECT*FROMXSZY=2\*GB3②設(shè)置XSZY的ZYH為外鍵,該外鍵參照ZY的主鍵(ZYH),約束名位FKZYSNULL,約束規(guī)則為:SETNULL。=3\*GB3③數(shù)據(jù)驗證:DELETEFROMzyWHEREzyh=‘02’=4\*GB3④查看數(shù)據(jù),執(zhí)行如下命令,查看規(guī)則是否起作用:SELECT*FROMZY;SELECT*FROMXSZY;⑤刪除約束FKZYSNULL;(5)設(shè)置SC表和course表的參照關(guān)系,參照規(guī)則為:ONDELETECASCADE,約束的名稱為SCCO_FK。提示:設(shè)置之前一定要查看SC表和course表的數(shù)據(jù)是否有沖突。7、刪除STUDENT、SC所有約束,如果已刪除則忽略四、實驗報告要求
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度行政單位合同內(nèi)部管理優(yōu)化與改進(jìn)合同3篇
- 2025年度內(nèi)墻粉刷施工與墻面涂料環(huán)保認(rèn)證合同3篇
- 二零二五年度文化場館保潔與文物保護(hù)合同3篇
- 二零二五年度農(nóng)業(yè)農(nóng)機(jī)信息化建設(shè)與維護(hù)合同3篇
- 2025年度新能源汽車居間買賣服務(wù)合同3篇
- 二零二五年度交通設(shè)施租賃合同范本3篇
- 農(nóng)村農(nóng)業(yè)勞務(wù)用工合同(2025年度)勞務(wù)派遣服務(wù)合同
- 2025年信用社黃金租賃合同模板3篇
- 2025年度汽車維修廠汽車用品銷售承包合同3篇
- 2024年中國環(huán)保健康濕毛巾市場調(diào)查研究報告
- 2025屆青海省西寧二十一中學(xué)七年級數(shù)學(xué)第一學(xué)期期末考試試題含解析
- 湖北省宜昌市2025屆九年級物理第一學(xué)期期末達(dá)標(biāo)測試試題含解析
- DL-T5394-2021電力工程地下金屬構(gòu)筑物防腐技術(shù)導(dǎo)則
- 2021泛海三江JB-QBL-QM210火災(zāi)自動報警控制器消防聯(lián)動控制器說明書
- 兒科護(hù)理技術(shù)操作規(guī)范
- 2024年江蘇宿遷經(jīng)濟(jì)技術(shù)開發(fā)區(qū)城市管理輔助人員招聘筆試參考題庫附帶答案詳解
- 馬拉松賽事運(yùn)營服務(wù)方案
- 陽光少年體驗營輔導(dǎo)員工作總結(jié)
- 國家能源集團(tuán)考試試題
- 2024銷售業(yè)績深度總結(jié)報告
- 小學(xué)道德與法治教學(xué)工作總結(jié)3篇
評論
0/150
提交評論