數據庫實驗答案_第1頁
數據庫實驗答案_第2頁
數據庫實驗答案_第3頁
數據庫實驗答案_第4頁
數據庫實驗答案_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗(2)、交互式SQL(1): 利用SQL 語句創(chuàng)建數據庫、表及表之間關系一、實驗目的和注意事項1、實驗目的:熟悉創(chuàng)建數據庫和數據表的SQL語句。2、注意事項:輸入SQL語句時應注意中文、英文的區(qū)別。二、實驗內容在查詢分析器中,完成以下操作。1、用SQL語句創(chuàng)建數據庫,名稱為“TSC”。2、用SQL語句在TSC數據庫創(chuàng)建4張表:T,S,C,SC(參考教材P78例3.1)3、在上面的4張表中插入示例數據(參考教材P21例1.7)三、實驗步驟(這部分不需要寫作實驗報告上)1、打開SQL Server 2000的查詢分析器2、創(chuàng)建數據庫TSC。3、創(chuàng)建4個表(參考教材P78例3.1)。4、在4張表

2、中插入數據(示例數據參考教材P21例1.7,Insert語句參考P97 3.4.1數據插入)四、實驗報告記錄部分(在實驗報告中記錄創(chuàng)建數據庫、創(chuàng)建表及向表中插入數據的SQL語句)1、用SQL語句創(chuàng)建數據庫,名稱為“StudentCourse”。2、用SQL語句創(chuàng)建StudentCourse中的3張表(見下面),同時指定主碼、外碼、約束等。3、在3張表中插入下面的示例數據表1學生表(Students)數據學號Sno姓名Sname性別Ssex出生日期Sbirthday所在系Sdept備注Memo0602001鐘耀華男1987-05-01計算機優(yōu)秀畢業(yè)生0602002吳佳碩女1987-03-24計算

3、機愛好:音樂0602003吳純斌男1988-07-01計算機0701001王騰飛男1988-05-04機電愛好:音樂0701002林師微女1987-04-03機電愛好:體育0701003李樂怡女1986-03-03機電0703001李奇男1988-09-17工商管理表2課程表(Courses)數據課程號Cno課程名Cname先行課PreCno學分CreditC1數據結構4C2數據庫原理C14C3大型數據庫C23C4高爾夫1表3選課表(SC)數據學號Sno課程號Cno成績Grade0602001C1610602001C2720602001C3880602002C10602002C26107010

4、01C1500701001C20701002C3780701003C1520701003C387實驗(3)、交互式SQL(2)簡單查詢2012-04-26 22:12:00|分類:默認分類|字號訂閱一、實驗目的和注意事項實驗目的:掌握單表查詢SELECT、FROM、WHERE的用法,特別要掌握比較運算符、邏輯運算符的使用。注意事項:子句WHERE表示元組篩選條件;子句HAVING表示元組選擇條件;子句HAVING必須和GROUP BY子句配合使用;二、教材例題練習(不需要記錄在實驗報告上)在實驗(2)創(chuàng)建的表及插入的示例數據(數據庫TSC)基礎上,完成教材P83例3.9三、實驗內容及步驟(在實

5、驗報告中記錄每個查詢的SQL語句)在實驗(2)創(chuàng)建的表及插入的示例數據(數據庫StudentCourse)基礎上,完成查詢計算機系全體學生的信息查詢姓“李”的學生的學號和姓名。查詢課程表中先行課為空的課程名。查詢考試成績有不及格的學生的學號。求選修了C1課程或C2課程的學生的學號及成績。查詢全體計算機系學生的姓名及其年齡。查詢計算機系在19861987年之間出生的學生的姓名。查詢姓“李”的前2個學生(按姓名升序排列)的學號和姓名。查詢選修了兩門以上課程的學生學號與課程數。查詢選修課程數大于等于2的學生的學號、平均成績和選課門數,并按平均成績降序排列。附:參考解答實驗(4)、交互式SQL(3)復

6、雜查詢2012-04-26 22:16:24|分類:默認分類|字號訂閱一、實驗目的和注意事項實驗目的:1.理解多表查詢的概念;掌握多表查詢的SELECT、FROM、WHERE、JOIN子句的用法,特別要對比內連接、外連接的結果差異。2.掌握查詢中嵌套查詢和組合查詢的操作方法,進一步加深對SELECT語句的理解。注意事項:1、內連接、左外連接和右外連接的含義及表達方法;2、子句的使用,注意語句的層次嵌套關系和括號的配對使用問題;二、教材例題練習(不需要記錄在實驗報告上)在實驗(2)創(chuàng)建的表及插入的示例數據(數據庫TSC)基礎上,完成1、教材P93例3.19,注意some, all的使用方法,并掌

7、握其相應的IN、NOT IN的等價表示2、教材P94例3.20,注意SQL Server 2000不支持Unique謂詞,請給出解決這個問題的SQL語句,并記錄在教材例3.20的旁邊。三、實驗內容及步驟(在實驗報告中記錄每個查詢的SQL語句)在查詢分析器中輸入SELECT查詢語句,對在實驗(2)中已完成的StudentCourse數據庫中的表,進行下列查詢操作:1、多表連接查詢(1)查詢選修了【數據庫原理】的計算機系的學生學號和姓名。(2)查詢每一門課的間接先行課(即先行課的先行課)。(3)查詢學生的學號、姓名、選修課程的名稱和成績。(4)查詢選修了課程的學生姓名。(5)查詢所有學生的信息和所

8、選修的課程,沒有選課的同學對應的選課信息為空。(6)查詢所有課程的課程編號、課程名稱及選課人數,沒有被選的課程選課人數顯示為0。(7)列出學生所有可能的選修情況。(8)查找計算機系的學生選修課程數大于2的學生的姓名、平均成績和選課門數,并按平均成績降序排列。2、嵌套查詢和組合查詢操作。(1)統計選修了【數據庫原理】課程的學生人數。(2)查詢沒有選修【數據庫原理】課程的學生信息。(3)查詢其他系中比計算機系學生年齡都小的學生。(4)查詢被0602001學生或0602002學生所選修的課程的課程號(用UNION組合查詢與IN條件查詢兩種方法實現)。(5)查詢0602001學生和0602002學生同

9、時選修的課程的課程號(用IN子查詢與EXISTS嵌套子查詢兩種方法實現)。(6)查詢被學號0602001學生所選修的課程的課程號。附:參考解答實驗(5)、交互式SQL(4)數據更新2012-04-26 22:19:24|分類:2010級數據庫教學|字號訂閱一、實驗目的和注意事項實驗目的:熟悉插入、修改和刪除SQL語句的用法注意事項:對于INSERT語句,要求理解默認值約束、非空約束在插入時所起的作用。二、教材例題練習(不需要記錄在實驗報告上)在實驗(2)創(chuàng)建的表及插入的示例數據(數據庫TSC)基礎上,完成1、教材P98例3.25,注意更正教材上第,小題的錯誤,并記錄在該題的旁邊2、教材P99例

10、3.263、教材P99例3.27,注意更正教材上第小題的錯誤,并記錄在該題的旁邊三、實驗內容及步驟(在實驗報告中記錄每個查詢的SQL語句)在實驗(2)創(chuàng)建的表及插入的示例數據(數據庫StudentCourse)基礎上,完成向表Students中插入(0601001,趙林,男,1985-09-08,計算機)的記錄。向SC表中添加一個學生的選課記錄,學號為0601001,所選的課程號為C2。SC表中有Sno、Cno、Grade這3個列。這里只知道學號和課程號,不知道成績值。向表Students中插入(0601002,張修雨,default)記錄,該記錄的數據中default表示默認值男,其他數據為

11、空值。用CREATE語句建立表StudentBAK1,包含(與Students的Sno、Sname、Sdept相同)3個字段,然后用INSERT SELECT語句實現向StudentBAK1添加Students表中的計算機系學生的學號、姓名、所在系的信息。用SELECT INTO語句實現把Students表中1986年后(包含1986年)出生的學生的學號、姓名存儲到一個新表StudentBAK2。將Students表中姓名為【趙林】的同學所在系改為【機電】,愛好改為【足球】。將選修了課程名為【數據庫原理】并且有成績的學生成績加5分。將StudentCourse數據庫的StudentBAK1表中

12、所有姓趙的同學刪除。刪除機電系課程成績不及格或者沒有登記成績的學生選課記錄。將StudentCourse數據庫的StudentBAK2表中的所有行刪除。附:參考解答實驗(六)、第四章 數據庫安全性2011-11-01 13:00:58|分類:默認分類|字號訂閱一、實驗目的1.熟悉通過SQL語句對數據進行安全控制2.完成數據庫系統概論(第四版)一書中第四章例題的上機練習二、實驗平臺MS SQL Server 2000三、實驗要求1、使用SQL語句對數據進行安全控制,包括授權和權力回收。2、授權操作完成后,檢查用戶是否真正具有所授予的數據操作權力;在權力回收操作之后,用戶是否確實喪失了所回收的數據

13、操作權力。四、實驗內容及完成情況(實驗參考解答見教學博客)在實驗開始之前,需要把ftp(網盤上亦提供)上所提供的2個數據庫文件(實驗(6)student.mdf,實驗(6)student_log.ldf)下載到本機,并將其附加到SQL Server上。附加完成以后,會出現數據庫student,在這個數據庫中已建立了三張基本表:student、course、SC,下面的實驗是在這3張表的基礎上進行的。1.在數據庫student中創(chuàng)建7個用戶U1,U2,U3,U4,U5,U6,U7記錄你的實際操作過程2.完成教材4.2.4小節(jié)例1例7(P138139)的授權語句。3.在授權完成以后,驗證用戶是否擁

14、有相應的權限注意:驗證時需要分別以不同的用戶(U1U7)身份登錄到數據庫,進行相關的操作,檢查他們是否具有教材表4.4(P139)中的相應權限。4.完成教材4.2.4小節(jié)例8例10 (P140)的權限回收語句,并驗證在權限回收以后,該用戶是否真正喪失了對數據的相應權限。5.數據庫角色的使用包括:創(chuàng)建角色,為角色授權,將用戶添加到角色中,從角色移除用戶等操作,角色概念介紹參考教材4.2.5小節(jié)數據庫角色的內容( P142),而在SQL Server上機操作需要參考教學博客上提供的示例代碼自行完成。五、出現的問題及解決方案附錄一:SQL Server2000數據庫附加方法附錄二:本次實驗參考解答實

15、驗(七)、第五章 數據庫完整性2011-11-07 14:37:12|分類:默認分類|字號訂閱一、實驗目的1.熟悉通過SQL語句對數據進行完整性控制2.完成數據庫系統概論一書中第五章例題的上機練習二、實驗平臺MS SQL Server 2000三、實驗要求使用SQL語句對數據進行完整性控制,包括3類完整性約束、CHECK短語、CONSTRAINT子句、觸發(fā)器。通過實驗證實,當操作違法完整性約束條件時,系統是如何處理的。四、實驗內容及完成情況在本次實驗中,對數據完整性進行上機練習。包括3類完整性、CHECK短語、CONSTRAINT子句、觸發(fā)器。因為完整性約束絕大部分是在定義表結構時進行的,因此可能需要多次重復定義同一張表。如果表名發(fā)生重復,則需要先刪除舊表后再重新建立。在開始實驗之前,先創(chuàng)建一個名為Practice7的數據庫,下面所有的SQL語句都是在Practice7這個數據庫內執(zhí)行的1.在數據庫Practice7中創(chuàng)建教材P82的student, course, sc三張表,先不設置主鍵,檢查能否向表中插入重復值。2.實體完整性:刪除上一步創(chuàng)建的3張表,重新創(chuàng)建,對每張表都設置主鍵,先不為SC表設置外鍵。再次檢查能否向表中插入重復值,能否在SC表中插入不存在的學號(Sno)或者課程號(Cno)3.參照完整性

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論