數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第1頁
數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第2頁
數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第3頁
數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第4頁
數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

數(shù)據(jù)庫的查詢實(shí)驗(yàn)實(shí)驗(yàn)報(bào)告學(xué)號姓名班級:班內(nèi)序號:專業(yè):電子科學(xué)與技術(shù)報(bào)告提交日期:2011/12/13目錄、實(shí)驗(yàn)?zāi)康亩?、?shí)驗(yàn)環(huán)境三、主要設(shè)計(jì)思想與實(shí)驗(yàn)步驟四、實(shí)驗(yàn)結(jié)果、實(shí)驗(yàn)用例、實(shí)驗(yàn)結(jié)果截屏五、實(shí)驗(yàn)總結(jié)一、實(shí)驗(yàn)?zāi)康恼莆諗?shù)據(jù)庫完整性的定義學(xué)會(huì)向數(shù)據(jù)庫中添加角色與用戶并設(shè)置權(quán)限的方法、二、實(shí)驗(yàn)環(huán)境:編程環(huán)境:Microsoftsql2008操作系統(tǒng):Win7homebasic三、主要設(shè)計(jì)思想與實(shí)驗(yàn)步驟根據(jù)實(shí)驗(yàn)要求,分別使用Transact-SQL語句和企業(yè)管理器設(shè)置各表的外鍵和主鍵。然后根據(jù)之前學(xué)會(huì)的知識對各表進(jìn)行插入、刪除、更改等操作,觀察之前設(shè)置的主鍵與外鍵等規(guī)則對操作的影響。在安全性實(shí)驗(yàn)中,新建一個(gè)登陸賬號,然后在相應(yīng)的數(shù)據(jù)庫下新建一個(gè)用戶并賦予相應(yīng)的權(quán)限。在相應(yīng)的數(shù)據(jù)庫下新建帶有權(quán)限的數(shù)據(jù)庫角色并賦予給用戶。登陸新建的用戶對數(shù)據(jù)庫進(jìn)行操作。、實(shí)驗(yàn)結(jié)果(測試用例、實(shí)驗(yàn)結(jié)果截屏)完整性實(shí)驗(yàn)與要求:1、分別定義數(shù)據(jù)庫中各基表的主鍵、外鍵,實(shí)現(xiàn)實(shí)體完整性約束和參照完整性約束在之前的實(shí)驗(yàn)中,我們已經(jīng)給各表設(shè)置過主鍵,部分表設(shè)置過外鍵。設(shè)置表class的外鍵department_id的截圖:

圖一設(shè)置表student_course的外鍵course_id的SQL代碼如下:altertable[dbo].[student_course]addforeignkey(course_id)referencescourse(course_id)執(zhí)行結(jié)果如下:圖原因是student_course表中有如下的數(shù)據(jù),表中的course_id在course表中不存在。圖三從表中刪除這兩組數(shù)據(jù)之后,設(shè)置外鍵則可以成功。2、向?qū)W生表插入具有相同學(xué)號的數(shù)據(jù),驗(yàn)證其實(shí)體完整性約束

Student表中原有數(shù)據(jù)如下:Etudentjd□tuderitnamesexbirthdasejdentrancedatehoirneaddrEmail?g99?202莆紅01984^36-01.0D:??g994021999-09-0100:...揚(yáng)州市五亭舌4…M££11963-12-01DD;;..?g99Pi1995-09-0100;...聲忘玄武區(qū)怵■■MJLL□994020411983-*39-090D:?.0994021999-09-0100:...汀芮穆稈布書..M££g93<i2O5李紅乃]a0D:;...gg?i1999-Cg-OlOO:...江苗僅證市百■■NULLg9Q40206林海國iigS4_i34^5QDi...390402iggg^g_01QQ=...北京市中關(guān)村…M.S.L§9940207李紅[?。?198^5-230D:...申94011999-09-0100:...雨京期北踣4…At€£g99?21C]赴青11905^1090D:;...甲中1021999-09-0100:;...南京中山北貉1…MJLLg994O211我肖111985^31-09ODl...0994021999-09-0100:...南京中山北洛1…M££9^940301左科聲11965<I9-O?DD:;...陽另0了1995-09-0100:;...MJS.1MJLLg9g4O3O2許小華a1983-10-10QDi...3994031999-09-0100:...上海市龍蠱蹈9…M.S.Lg994O3O3強(qiáng)雅麗01984^31-01OD:...g994031999-09-0100: 上汪市北京*rVULLggg^o加4曲紅□快斗書gaode...g994031999-09-0100s...淹京中山路?號NULLAtffiAmNULLAtffjAtffi圖四使用Transact-SQL語句插入如下:insertinto[dbo].[student](student_id,student_name)values('g','孫彥巧')執(zhí)行結(jié)果(1行受影響)g3940201AL££Amg994020201984-06-0100:...gg94021999<l9-0100:...揚(yáng)州市五^4..皿g99W2J03曹雨11903-124)gS94011999-09-0100;...南京玄貳區(qū)林…他』□9940204芮華11985-09-0900:...q994021999-09-0100:...汀蘇侵訐韋壽”,f^S.Lg994O2D5李匸改]0lgs^HH-os□□:?..g陽旳11939-ag-oioo:...江蘇仗:正巾寺…?⑷g994O2D6枚海國119844M-0500!...g?9402199M9-0100:...北京市P關(guān)對…喚^940207李紅[?。?198+05-2300:...g994011999-09-0100:...雨京虎踮北路斗,“.蚯血339W210屯青113&5-01-0900s...g船他1999-09-0100:...南京中山北酪1,“fl?£09940211京悄L11985-01-0900:...□994021999<l9-0100:...南申中II比幣…NHL99940301左雅聲11SS5-O9-0S□□:...g陽旳d1999-05-0100:...MJLLggg4a3G2詐小華01981-10-10QQ:...g船40弓1WM9-0100:...上將韋龍盤賂J曬血g9940303強(qiáng)雅麗01984-01-0100:...gg94031999<l9-0100:...上組帀北京東…皿399TO3O4欄二01994-09-09g陽畑1999-09-0100;...南京中』路疙皿l/wNULLNULLMil顧丄NULLAtfii f^Rll圖五3、向?qū)W生表中插入一條數(shù)據(jù),班級號是學(xué)生表的外鍵,驗(yàn)證參照完整性約束;使用Transact-SQL代碼插入如下:insertinto[dbo].[student](student_id,student_name,class_id)values('g','孫彥巧','g99404')因?yàn)榘嗉壧杇99404在class表中不存在,由于class_id的外鍵約束,插入不成功,結(jié)果截屏如下:圖六4、刪除教師表中的所有數(shù)據(jù),驗(yàn)證參照完整性約束;使用Transact-SQL代碼刪除如下:deletefrom[dbo].[teacher]因?yàn)閠eacher表為teacher_course_class表外鍵的參照表,所以刪除不成功,實(shí)驗(yàn)結(jié)果截屏如下:消息嘰級別珂狀態(tài)卩第丄行3ELETE謂*5]口RETESEHCE約束化丁,沖突廿該沖突炭生于數(shù)據(jù)9表"dho.tea=hEX_caijr-e_=le.23?cclizm1te2cher_id'ai誼已型止、 ' ' _ _ _圖七5創(chuàng)建一個(gè)規(guī)則,將其綁定到Student表的Sex列上,保證輸入的性別值是0或1由于微軟在SQLServer2005及以上的版本中已經(jīng)決定啟用規(guī)則和默認(rèn),所以不能用企業(yè)管理器創(chuàng)建規(guī)則和默認(rèn)值,只能用Transact-SQL語句實(shí)現(xiàn)。創(chuàng)建規(guī)則語句如下:createrulesex01as@sex=0or@sex=1綁定規(guī)則語句如下:executesp_bindrule'sex01','student.sex'實(shí)驗(yàn)結(jié)果截屏如下:

名稱sex數(shù)據(jù)類型sm:allinA系統(tǒng)類型sm:allinA主謹(jǐn)F:alse允許空值True計(jì)算F:dlse計(jì)算文本標(biāo)識False標(biāo)識種子0標(biāo)識増重0默認(rèn)值綁定默認(rèn)架構(gòu)KTsexOl規(guī)則架構(gòu)dbo長度2排序規(guī)則數(shù)值精度5小埶位埶0圖八6、為Student表增加一列,命名為dept,創(chuàng)建一個(gè)默認(rèn)對象,將其綁定到Student表的dept列上,使其默認(rèn)值為電子院。為student表增加一列dept,使用Transact-SQL語句實(shí)現(xiàn)如下:altertable[dbo].[student]adddeptchar(10)NULL創(chuàng)建默認(rèn)對象語句如下:createdefault[dbo].[dept]as'電子院'綁定默認(rèn)對象語句如下:sp_bindefaultdept,'student.dept實(shí)驗(yàn)結(jié)果截屏如下:圖九安全性實(shí)驗(yàn)內(nèi)容與要求:1、定義一新的登錄帳號、數(shù)據(jù)庫用戶,并授予其訪問學(xué)生選課數(shù)據(jù)庫的讀權(quán)限

使用Transact-SQL語句創(chuàng)建登陸賬號shih,再創(chuàng)建數(shù)據(jù)庫用戶shihexp使用shih作為登陸名,并授予訪問學(xué)生選課數(shù)據(jù)庫的讀權(quán)限的代碼如下:createloginshihwithpassword=''useexp02createusershihexpforloginshihgrantselectongrantselectongrantselectongrantselectongrantselectongrantselectongrantselectgrantselectongrantselectongrantselectongrantselectongrantselectongrantselectongrantselectongrantselectonbooktoshihexpclasstoshihexpstudenttoshihexpteachertoshihexpstudent_coursetoshihexpcoursetoshihexpdepartmenttoshihexpteacher_course_classtoshihexp使用企業(yè)管理器操作的實(shí)驗(yàn)截圖如下:首先,在服務(wù)器的“安全性”,“新建”上右鍵選擇“新建登錄名”。設(shè)置登錄名等如下圖:號2IF庫■■■■^tutllDIn歹丁K丁. ;fi7.dc:5]-Jc7'n:7;1:一…才;*:?■-:::密円(P):規(guī)舸広):□^Trlhr.<-:lhr.t-:0):刁訴弓廣卡尹.咋國I[J\強(qiáng)古壬乂_妄$畫用戶在似親磁殛改密碼I'氓碑證書山氓刪豐劉髓胡(T)*!射劉憑堀IM:圖十設(shè)置完成后,登陸名下有新建的名為“sanqiao”的項(xiàng)目。在數(shù)據(jù)庫Buptsyq中的“安全性”,“用戶”上右鍵選擇“新建用戶”。設(shè)置如下圖:圖十設(shè)置完后,數(shù)據(jù)庫Buptsyq中有新建的用戶“yanqiao”。日[J(local)(SQLServer10.50.1600-

曰口琳庫a口做站陣?口救搖庫快曜□LJBuptsyq0口暫據(jù)庫關(guān)莖昌田亡i表?口視冒田£□同文詞0口可編程性0口ServiceBroker(3口存儲□口安甜曰□用戶dbo-IINFORMATION.shihexp輕怎yanqiao@口誦色0匸架構(gòu)0口扌囲柚鑰田口證P0口對稱密鑰圖十二2、分別采用WindowsNT/2000驗(yàn)證方式和WindowsNT/2000及混合驗(yàn)證方式用不同的用戶進(jìn)行登錄連接;使用WindowsNT/2000驗(yàn)證方式登錄原有用戶截圖如下:

圖十三使用WindowsNT/2000混合驗(yàn)證方式登錄用戶“yanqiao”的截圖如下:圖十四3、分別用sa用戶和新定義的用戶訪問學(xué)生數(shù)據(jù)庫,并對其中的學(xué)生表數(shù)據(jù)進(jìn)行修改;使用sa用戶訪問操作,在student表中新增一條條目的實(shí)驗(yàn)截圖如下:

曰|j曰|jBup<甥qQjLi站蘆空圖ElLi喪國二i玨麻tOdbD.bookmC3dbo-da?(fi□dbo.oQurse±□dbD.dppartiTiE-nl+0dbo-.s^JLidenl!.t0db&.s^id&nLcourstI□dbo-lesche*王□dbD.tearher_courw國口dbd計(jì)算機(jī)曲學(xué)生:i辺閆匡二i同良祠QW的期2林紅D130-4-D6-DlCO:CO:M.OMgW4D219930501ODi...馳佈五彌乩書雨]L9H3-3Z-01Oa:CC:CG.?g334Dl1?3H33h3]DD:...由京立武區(qū)林..CiW?2I]^E華1i303-O9-fl9CO:CO:CO.&MCP94D21999090100:...■I;1,-V..=rtr..g?9?2D5輟[閔DL9B-1-D9-DB?l:0a:OT.?g?S4Dl1旳3~03勺]□□!...:T-":■■-Q99412D6秋硒115B44]44]5M!CCi!M.0iM.393402lwg-og-oiODL...11仃li..g?9?2D7輟[[嗣D舊眄叩5-23M:0a:OT.?g?S4Dl1旳3~03勺]□□!...注:.099401101g?9402lwg-og-oioDt..il-'lll.lli^L..g99?2]1鋼]L9BS4J1419CClCClOa.OJ]g994DZ1993139DD:...3iU41rll.語:…At£09940301左卵1IBBMWSMJfflJM.OM099403lwg-og-oioDt..fiU£I^Ug99?3D2許小華DL9H3-3D-3DOTlCClOa.OJ]g994D31993139DD:...At£099403D3彌6麗DlPB44]i4]lW:ffl:M.0iMOW4O5lwg-og-oioD:...:^.■-?=..I^Uce9?3IH曲紅DL9H-q-D9-n?MlCMiOT.OMg994D31993~09町】DD:...肪中山噸AtiQ99413D5W■邸DlS0M&4]9M:ffl:M.OOi3O?94D51999-09-01ODL..目甬芒新邦市人“i^UNLLLNLLLNULLPULLhLILLNULLNLL圖十五如上圖,新增條目的操作成功。然后使用Transcat-SQL語句更改數(shù)據(jù)代碼如下:update[dbo].[student]setstudent_name='彥巧'wherestudent_name='孫彥巧實(shí)驗(yàn)截圖如下:59940304林紅01984^9-0900:00:00.000卿4031999-09-0100:...南京中LI籬9號.WEg9940305孫彥巧01^9-08^0900:00:00.000卿4031999-09-0100:...河南省新卿市1,“.WE圖十六使用新定義的用戶yanq訪問操作的實(shí)驗(yàn)截圖如下圖十七如上圖,yanq僅對該數(shù)據(jù)庫有訪問的權(quán)限,所以視圖更改course表的數(shù)據(jù)時(shí)會(huì)被拒絕,截圖如下:dep04_s002QSQLServer^...dep04_s001_01...8055dep04_s0021AV確序設(shè)計(jì)…dep04_£002_01...634斗deo04sQQ3_瑩齢n審逼...[1戸口口馬sflfl3口16S斗4MicrosoftSQLServerManagementStudiodep04_sdep04_s超交行斗口的舞”錯(cuò)誤源:.PJetSqlClientDataProvideFo著鵜息:拒距了腦韻'course'舞庫r牝的UPDATE權(quán)限。請更IE錯(cuò)和墾試r腿Eh耽肖更丸圖十八4創(chuàng)建數(shù)據(jù)庫角色,并授予訪問數(shù)據(jù)庫的讀、寫權(quán)限使用Transact-SQL語句創(chuàng)建角色newrole的代碼如下:useBuptsyqcreaterolenewrolegrantselect,insert,delete,updatetonewrole創(chuàng)建成功后數(shù)據(jù)庫Buptsyq的角色如下:B口安甜田口用戶0口角色數(shù)鋸庫角芭db_acce55admindb_backupoperatordb_dataresderdb_datawriterdb_ddladmindb_denydatareaderdb_denydatawritwrdb_ournerdbsecurityadminnewrolepublic圖十九

使用企業(yè)管理器創(chuàng)建的步驟如下:在“數(shù)據(jù)庫角色”上右鍵,選擇“新建數(shù)據(jù)庫角色”曰_J田£2?用戶曰口坤色曰_J田£2?用戶曰口坤色??db_ddladmindb_dcnydatareaderdb_deny!datawrit)&rdb_Qwnerdb_secuirityadminnewrolepublic圖二十圖二十設(shè)置如下,角色名稱設(shè)為newroletemp,架構(gòu)為db_datareader和db_datawriter:圖二十設(shè)置成功后,數(shù)據(jù)庫角色列表如下:□_J宜鋰0_J用戶日_J角色曰口監(jiān)db_acce5Eadmin毎db上ackupo-pe-rato-r0db_datareader莖db_datawriter冬、db_ddladmin主db_denydatsreader驗(yàn)db_denydatawriterUdb_OLvrier魚db_securilyadmin鶴neuvrol&占public営newroletemp圖二十二5、將角色賦予(1)中定義的用戶,建立用戶和角色聯(lián)系在數(shù)據(jù)庫Buptsyq的用戶yanqiao上進(jìn)行編輯,它的“數(shù)據(jù)庫角色成員身份”為剛剛創(chuàng)建的newrole,如下圖::-J4*dI_哉65年冃戶-比l:;S[=np:i:^-iT.|廚齊全跚■j球£U5-fC\5U5二那E IQffiaha建錄名druE4^SSS*£〕閃.無建衆(zhòng)宅,:-J4*dI_哉65年冃戶-比l:;S[=np:i:^-iT.|廚齊全跚■j球£U5-fC\5U5二那E IQffiaha建錄名druE4^SSS*£〕閃.無建衆(zhòng)宅,MK認(rèn)架恂血連舊□.0C41.If?n^uyxnqasd此用戶|用怖裸構(gòu)吋dbi.cDiTd-it-if'rititf'!db_LCcyzikiDLatdbidlidiioidbdbl-kl.-Uf4-L>i4kdbiit-u'ritifli-lcLoupop?r-a.tai:dbMl皿iadbbcLydaZa込tkDL7>l-Ll.-Util.y£:'Jdb_u2C4££-Ldli&nnTnnT圖二十三6、再次用此用戶訪問學(xué)生

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論