SQLServer2023年實驗指導書2023年版_第1頁
SQLServer2023年實驗指導書2023年版_第2頁
SQLServer2023年實驗指導書2023年版_第3頁
SQLServer2023年實驗指導書2023年版_第4頁
SQLServer2023年實驗指導書2023年版_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

數(shù)據(jù)庫原理試驗指導書——2023版本計算機與信息學院121創(chuàng)立數(shù)據(jù)庫與數(shù)據(jù)表試驗目的:生疏SQLSERVER環(huán)境,了解企業(yè)治理器和查詢分析器的根本使用方法;SQL的CREATE、ALTER和DROP命令;把握數(shù)據(jù)表的創(chuàng)立和數(shù)據(jù)記錄的插入方法。試驗內(nèi)容:創(chuàng)立教學治理“JXGL”數(shù)據(jù)庫,并建立學生STUDENT、課程COURSE和選修SC三個數(shù)據(jù)表,各表中的數(shù)據(jù)如下所示:STUDENT:SnoSnameSsexSageSdept95001李勇M20CS95002劉晨F19IS95003王敏F18MA95004張立M18ISCnoCnameCpnoCcreditCnoCnameCpnoCcredit1數(shù)據(jù)庫542數(shù)學23信息系統(tǒng)144操作系統(tǒng)635數(shù)據(jù)構造746數(shù)據(jù)處理27C語言64SnoCnoGrade9500119295001285950013889500229095002380SC:創(chuàng)立供給系統(tǒng)“GYXTSPJ和供給狀況表SPJ四個數(shù)據(jù)表,各表中數(shù)據(jù)如下所示。供給商S:SNOSNAMECITYS1精益天津S2萬勝北京S3東方北京S4豐泰隆上海S5康健南京零件P:

PNOP1P2P3P4P5P6

PNAME螺母螺栓螺絲刀螺絲刀凸輪齒輪

COLOR紅綠藍紅藍紅

WEIGHT121714144030工程工程J:供給狀況SPJ:SNOS1S1S1S1S2S2S2S2S2S2S3S3S4S4S4S5S5S5S5

JNOJ1J2J3J4J5J6J7

PNOP1P1P1P2P3P3P3P3P5P5P1P3P5P6P6P2P3P6P6

JNAME三建一汽彈簧廠造船廠機車廠無線電廠半導體廠JNOJ1J3J4J2J1J2J4J5J1J2J1J1J1J3J4J4J1J2J4

CITY北京長春天津天津唐山常州QTY200100700100400200500400400100200200100300200100200200500試驗步驟:用企業(yè)治理器創(chuàng)立教學治理“JXGL”數(shù)據(jù)庫。連接“效勞器治理器/MicrosoftSQLServer,進入SQL效勞治理器窗口,如圖1.1/稍后綠燈亮,啟動成功。程序/MicrosoftSQLServer器是SLQServer的一個最重要的治理工具,它供給了一個遵從Microsoft治理把握臺〔MMC〕的用戶界面,以層疊形式顯示出全部SQLServer對象,使用企業(yè)治理器幾乎可以完成全部的治理工作。MicrosoftSQLServers/SQLServer組/(Local)(WindowsNT)/1.2所示。圖1.1SQL效勞治理器 圖1.2企業(yè)治理器創(chuàng)立教學治理“JXGL”數(shù)據(jù)庫。選擇“操作”菜單中的“建數(shù)據(jù)庫”命令,進入“數(shù)據(jù)庫屬性窗口JXG1.3系統(tǒng)自動創(chuàng)立JXGL數(shù)據(jù)庫。在JXGL數(shù)據(jù)庫中建立STUDENT表,并插入學生記錄。在把握臺根名目窗口中開放“數(shù)據(jù)庫”文件夾,就會看到建立的數(shù)據(jù)庫JXG圖1.4所示,鼠標右擊“表”圖標,在彈出的快捷菜單中選擇“建表”命令,啟動“表設描述了列名、數(shù)據(jù)類型、長度和允許空等屬性,將STUDENT表的各列屬性依次輸入到網(wǎng)1.5所示。圖1.3創(chuàng)立數(shù)據(jù)庫窗口 圖1.4“建表”命令“保存”按鈕 “保存”按鈕圖1.5表設計器 圖1.6設置主鍵然后,可以右擊列名Sno,選擇“設置主鍵”命令,其左側將消滅一個鑰匙樣圖標,如圖1.6所示。單擊表設計器的工具欄中的“保存”按鈕,消滅保存對話框,輸入表名STUDEN1.7所示,并按“確定”按鈕。1.7保存對話框JXGLSTUDENT/1.81.9所示。1.8“返回全部行”命令1.9輸入數(shù)據(jù)同樣方法,可以在JXGL數(shù)據(jù)庫中建立COURSE表,并插入記錄。同樣方法,可以在JXGL數(shù)據(jù)庫中建立SC表,并插入記錄。查看三個表中的內(nèi)容。JXGLSTUDENT表,選擇“翻開表/1.8所示,即可查年STUDENT表中的內(nèi)容。同樣方法,可以查看COURSE表和SC表中的內(nèi)容。修改數(shù)據(jù)表構造。STUDENT表增加“入學時間”列,其數(shù)據(jù)類型為日期型。JXGLSTUDENT1.5所示,即可連續(xù)增加“入學時間”列,數(shù)據(jù)類型選擇為“datetime”型。單擊工具欄中的“保存”按鈕。JXGLSTUDENT表,選擇“翻開表/1.8所示,即可查年STUDENT表中的內(nèi)容,Scome列值都為NULL。②刪除“入學時間”列。JXGLSTUDENT表,選擇“設計表”命令,即進入表設計器窗口,右擊上方網(wǎng)格中的Scom除列”命令。單擊工具欄中的“保存”按鈕。JXGLSTUDENT表,選擇“翻開表/1.8所示,看到Scome列已被刪除。刪除數(shù)據(jù)表。JXGLSTUDENT表,選擇“刪除”命令,即可刪除STUDENT表。同樣方法,可以刪除其他指定表。刪除數(shù)據(jù)庫在企業(yè)治理器中,右擊JXGL數(shù)據(jù)庫,選擇“刪除”命令,即可刪除JXGL數(shù)據(jù)庫。2.用查詢分析器創(chuàng)立教學治理“JXGL”數(shù)據(jù)庫。連接“效勞器治理器“結果顯示方式”按鈕查詢窗格“運行”按鈕查詢結果窗格對象掃瞄窗格/程序/MicrosoftSQLServer/1.10所示,SQLServe.SQLServers“結果顯示方式”按鈕查詢窗格“運行”按鈕查詢結果窗格對象掃瞄窗格圖1.9登錄窗口 圖1.11查詢分析器查詢分析器界面如圖1.10所示,它由標題欄、菜單欄、工具欄、對象掃瞄窗格、查詢窗格、查詢結果窗格等組成。其中,查詢窗格是編輯和執(zhí)行SQLServer程序的地方,查詢創(chuàng)立教學治理“JXGL”數(shù)據(jù)庫。在查詢窗格中輸入如下命令,然后單擊“運行”鈕執(zhí)行該命令。CREATEDATABASEJXGL;清空查詢窗格后,在JXGL數(shù)據(jù)庫中建立STUDENT表,并插入記錄,然后執(zhí)行。CREATETABLESTUDENT(Snochar(5)notnullunique,Snamechar(20)notnullunique,Ssexchar(1),Sageint,Sdeptchar(20));INSERTINTOSTUDENTVALUES(?95001?,?李勇?,?M?,20,?CS?);INSERTINTOSTUDENTVALUES(?95003?,?王敏?,?F?,18,?MA?);清空查詢窗格后,JXGL數(shù)據(jù)庫中建立COURSE表,并插入記錄,然后執(zhí)行。CREATETABLECOURSE(Cnochar(2)notnullPRIMARYKEY(Cno),Cnamechar(20),Cpnochar(2),Ccreditsmallint);INSERTINTOCOURSEVALUES(?2?,?數(shù)學?,??,2);INSERTINTOCOURSEVALUES(?6?,?數(shù)據(jù)處理?,??,2);VALUES(?7?,?C語言?,?6?,4);清空查詢窗格后,JXGL數(shù)據(jù)庫中建立SC表,并插入記錄,然后執(zhí)行。CREATETABLESC(Snochar(5)notnull,Cnochar(2)notnull,Gradesmallint,PRIMARYKEY(Sno,Cno),FOREIGNKEY(Sno)REFERENCESSTUDENT(Sno),FOREIGNKEY(Cno)REFERENCESCOURSE(Cno));查看三個表中的內(nèi)容。分別執(zhí)行以下命令,查看STUDENT、COURSE和SC數(shù)據(jù)表中的內(nèi)容。SELECT*FROMSTUDENT;SELECT*FROMCOURSE;SELECT*FROMSC;修改數(shù)據(jù)表構造。①向STUDENT表增加“入學時間”列,其數(shù)據(jù)類型為日期型,用SELECT命令查看表中內(nèi)容。ALTERTABLESTUDENTADDSCOMEDATETIME;SELECT*FROMSTUDENT;②刪除“入學時間”列,再用SELECT命令查看表中內(nèi)容。ALTERTABLESTUDENTDROPCOLUMNSCOME;SELECT*FROMSTUDENT;刪除數(shù)據(jù)表。DROPTABLESC;DROPTABLESTUDENT;DROPTABLECOURSE;刪除數(shù)據(jù)庫命令。切換到其他任意數(shù)據(jù)庫,然后可用如下命令刪除JXGL數(shù)據(jù)庫。DROPDATABASEJXGL;3.創(chuàng)立供給系統(tǒng)“GYXT”數(shù)據(jù)庫。(注:可承受企業(yè)治理器和查詢分析器兩種方法創(chuàng)立。)下面寫出實現(xiàn)如下操作的SQL語句:創(chuàng)立供給系統(tǒng)“GYXT”數(shù)據(jù)庫。建立供給商表S。建立零件表P。建立工程工程表J。建立供給狀況表SPJ。2簡潔查詢和連接查詢試驗目的:嫻熟把握SQLServer查詢分析器的使用方法,加深對標準SQL查詢語句的理解。嫻熟把握簡潔表的數(shù)據(jù)查詢、數(shù)據(jù)排序和數(shù)據(jù)連接查詢的操作方法。試驗內(nèi)容:基于試驗一創(chuàng)立的教學治理JXGL數(shù)據(jù)庫,參考教材簡潔查詢和連接查詢章節(jié)中的SQL操作實例,實現(xiàn)數(shù)據(jù)的根本查詢操作?;谠囼炓粍?chuàng)立的供給系統(tǒng)GYXT數(shù)據(jù)庫,實現(xiàn)以下根本查詢操作。試驗步驟:首先,寫出以下操作的SQL語句,然后進入到SQLServer查詢分析器中調(diào)試結果,并將結果抄寫下來。在教學治理JXGL數(shù)據(jù)庫中進展如下操作:求數(shù)學系學生的學號和姓名。求選修了課程的學生學號。求選修了數(shù)學課的學生學號和成績,并要求對查詢結果按成績降序排列,假設成績一樣則按學號升序排列。80-900.8輸出。求數(shù)學系或計算機系姓劉的學生的信息。求缺少了成績的學生的學號和課程號。查詢每個學生的狀況以及他〔她〕所選修的課程。求學生的學號、姓名、選修的課程名及成績。90分以上的學生學號、姓名、及成績。查詢每一門課的間接先行課〔即先行課的先行課。在供給系統(tǒng)GYXT數(shù)據(jù)庫中進展如下操作:求供給工程J1零件的供給商號SNO。求供給工程J1零件P1的供給商號SNO。統(tǒng)計每種零件的供給總量。3嵌套查詢和集合查詢試驗目的:嫻熟把握SQLServer查詢分析器的使用方法,加深對標準SQL查詢語句的理解。嫻熟把握數(shù)據(jù)查詢中的嵌套、分組、統(tǒng)計、計算和組合的操作方法。試驗內(nèi)容:基于試驗一創(chuàng)立的教學治理JXGL數(shù)據(jù)庫,參考教材嵌套查詢和集合查詢中的SQL操作實例,實現(xiàn)數(shù)據(jù)的高級查詢操作?;谠囼炓粍?chuàng)立的供給系統(tǒng)GYXT數(shù)據(jù)庫,實現(xiàn)以下根本查詢操作。試驗步驟:首先,寫出以下操作的SQL語句,然后進入到SQLServer查詢分析器中調(diào)試結果,并將結果抄寫下來。在教學治理JXGL數(shù)據(jù)庫中進展如下操作:求選修了數(shù)學的學生的學號和姓名。求數(shù)學課程成績高于李勇的學生學號和成績。求其他系中年齡小于計算機系年齡最大者的學生。求其他系中比計算機系學生年齡都小的學生。求選修了數(shù)學課的學生姓名。求沒有選修數(shù)學課的學生姓名。查詢選修了全部課程的學生的姓名。求至少選修了學號為“95002”的學生所選修的全部課程的學生學號和姓名。求選修各門課的人數(shù)及平均成績。2門以上且都及格的學生號及總平均分。求952門以上且都及格的學生號及總平均分,并按平均成績排序。統(tǒng)計每個人及格的成績的平均值,及格的門數(shù),結果按平均成績降序,及格門數(shù)降序排列。統(tǒng)計全部課程均及格學生的平均成績,及格的門數(shù),結果按平均成績降序,及格門數(shù)降序排列。在供給系統(tǒng)GYXT數(shù)據(jù)庫中進展如下操作:求供給工程J1紅色零件的供給商號SNO。1000種以上的供給商名字。求使用了天津供給商生產(chǎn)的紅色零件的工程號JNO。求沒有使用天津供給商生產(chǎn)的紅色零件的工程號JNO。求至少使用了供給商S1所供給的全部零件的工程號JNO。4數(shù)據(jù)更試驗目的:嫻熟把握在SQLServer的企業(yè)治理器和查詢分析器中進展數(shù)據(jù)更的方法。SQL更語句的理解。試驗內(nèi)容:基于試驗一創(chuàng)立的教學治理JXGL數(shù)據(jù)庫,參考教材數(shù)據(jù)更的SQL操作實例,實現(xiàn)數(shù)據(jù)的插入、修改和刪除操作。基于試驗一創(chuàng)立的供給系統(tǒng)GYXT數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)的插入、修改和刪除操作。提示:用企業(yè)治理器實現(xiàn)數(shù)據(jù)更,先翻開企業(yè)治理器,開放指定的數(shù)據(jù)庫節(jié)點,單擊“表”圖標,在右側窗格中右擊指定的表,選擇“翻開表/1.8所示,假設插入數(shù)據(jù),則在1.9所示;假設刪除數(shù)據(jù),在消滅的表格中右擊指定的整行記錄,選擇“刪除”命令,即可刪除該記錄;假設修改某數(shù)據(jù)項,可以直接在表格中進展修改。SQL操作語句。試驗步驟:在教學治理JXGL數(shù)據(jù)庫中進展如下操作:將一個學生記錄〔95020IS;年齡:18〕插入STUDENT表中。數(shù)據(jù)的插入操作:插入一條選課記錄,學號為950201號課程。對每門課程,求學生的平均分數(shù),并把結果存入數(shù)據(jù)庫。95020轉到數(shù)學系。0.8。95020學生的記錄。刪除數(shù)學系全部學生的選課記錄。在供給系統(tǒng)GYXT數(shù)據(jù)庫中進展如下操作:S,P,J,SPJ表中插入局部數(shù)據(jù)〔參照教材P64頁,此題試驗一已完成〕將供給商序號為S5的名稱改為宏民廠。S表中刪除供給商序號為S5的記錄,考慮對SPJ表的相應操作。S表中插入一條供給商信息:(S6,華天,深圳)。把全部紅色零件的顏色改為粉紅色。S1供給給J1的零件P1改為由S2供給。刪去全部藍色零件及相應的SPJ記錄。5數(shù)據(jù)完整性試驗目的:1.了解SQLServer用約束來維護數(shù)據(jù)完整性的機制。2.把握在企業(yè)治理器和查詢分析器中如何創(chuàng)立、使用及刪除約束的方法。試驗內(nèi)容:基于試驗一創(chuàng)立的教學治理JXGL數(shù)據(jù)庫,實現(xiàn)約束的創(chuàng)立、查看和刪除操作。創(chuàng)立人事關系RSGX數(shù)據(jù)庫及其中的職工數(shù)據(jù)表和部門數(shù)據(jù)表,并實現(xiàn)完整性約束條件的定義。試驗步驟:約束是SQLServerNOTNULL〔非空、CHECK〔檢查、UNIQUE〔惟一、PRIMARYKEY〔主鍵、FOREIGNKEY〔外鍵〕和DEFALT〔默認〕約束。在教學治理JXGL數(shù)據(jù)庫中進展如下操作:建立一個CITY表CityNo,CityNam,將CityNo企業(yè)治理器方法:JXGLCITY1。②翻開企業(yè)治理器,開放JXGL數(shù)據(jù)庫下的“表”文件夾,在右邊的具體窗格中選擇要創(chuàng)立約束的表CITY,右擊該表,選擇“設計表”命令,啟動表設計器。在表設計器中,右擊需要設為主鍵的字段CityNo,選擇“設置主鍵”命令其左側將消滅一個鑰匙樣圖標。設置完畢,關閉表設計器。查詢分析器方法:SQL語句創(chuàng)立主鍵,可使用CREATETABLE命令完成:CREATETABLECITY( CityNo CHAR(2) CONSTRAINTc1PRIMARYKEY,CityNameVARCHAR(30)NOTNULL);ALTERTABLE命令為已存在的表創(chuàng)立主鍵約束:ALTERTABLECITYADDCONSTRAINTc1PRIMARYKEY(CityN)c1為主鍵約束名稱。為JXGL數(shù)據(jù)庫中的CITY表,為其“CityName”創(chuàng)立惟一約束。企業(yè)治理器方法:①在企業(yè)治理器中,選擇設置惟一約束的CITY②在表設計器中,右擊CityName字段,選擇“索引/鍵”命令,消滅“屬性”對話框,并進入“索引/鍵”選項卡。③在該選項卡中,單擊“建”按鈕,然后在“索引名”文本框中輸入惟一約束名稱,再從列名選項的下拉列表框中選擇字段名稱〔CityNam,最終選擇“創(chuàng)立UNIQU”5.1所示。單擊“關閉”按鈕,完成惟一約束的創(chuàng)立。 圖5.1創(chuàng)立惟一約束對話框 圖5.2設置檢查約束查詢分析器方法:為已存在的表創(chuàng)立惟一約束,SQL語句如下:ALTERTABLECITYADDCONSTRAINTc2UNIQUE(CityNam)為JXGL數(shù)據(jù)庫中的SC表,為其“GRADE”創(chuàng)立檢查約束。企業(yè)治理器方法:①在企業(yè)治理器中,選擇設置檢查約束的SC②在表設計器中,右擊GRADE字段,選擇“CHECK約束”命令,消滅“屬性”對話框,并進入“CHECK約束”選項卡。③在該選項卡中,單擊“建”按鈕,然后在“約束名”文本框中輸入惟一約束名稱,GRADE>=0ANDGRADE<=105.2所示。單擊“關閉”按鈕,完成檢查約束的創(chuàng)立。查詢分析器方法:為已存在的表創(chuàng)立檢查約束,SQL語句如下:ALTERTABLESCADDCONSTRAINTc3CHECK(GRADE>=0ANDGRADE<=10)為JXGL數(shù)據(jù)庫中的STUDENT表,為其“SsexM。企業(yè)治理器方法:①在企業(yè)治理器中,選擇設置默認約束的STUDENT②在表設計器中,選擇SsexM5.3所示。單擊“關閉”按鈕,完成默認約束的創(chuàng)立。查詢分析器方法:為已存在的表創(chuàng)立默認約束,SQL語句如下:ALTERTABLESTUDENTADDCONSTRAINTc4DEFAULT?MFORSsex;“默認值”框 “默認值”框圖5.3創(chuàng)立默認約束 圖5.4創(chuàng)立外鍵約束為JXGL數(shù)據(jù)庫中的SC表,為其“Sno”創(chuàng)立外鍵約束。企業(yè)治理器方法:①在企業(yè)治理器中,選擇設置外鍵約束的SC表,翻開表設計器。②鼠標右擊,選擇“關系”命令,翻開“屬性”對話框的“關系”選項卡。③在該選項卡中,單擊“建”按鈕,從主鍵表下拉列表中選擇外鍵引用表STUDENT,并在其下拉列表框中選擇外鍵引用的SNO列;在外鍵表下拉表框中選擇要創(chuàng)立外鍵的SC表,并從其下拉表框中選擇要創(chuàng)立外鍵約束的SNO5.4所示。單擊“關閉”按鈕,完成外鍵約束的創(chuàng)立。查詢分析器方法:為已存在的表創(chuàng)立外鍵約束,SQL語句如下:ALTERTABLESC ADD CONSTRAINT c5 FOREIGN KEY(Sno) REFERENCESSTUDENT(Sno);查看約束的定義在企業(yè)治理器中,選擇要查看約束的表,翻開表設計器,單擊鼠標右鍵,分別選擇“索引/CHECK”命令,可以查看各類約束。刪除約束企業(yè)治理器方法:引/CHECK”命令,可以刪除各類約束。查詢分析器方法:刪除約束的SQL語句格式為:ALTERTABLE表名>DROPCONSTRAINT<約束名>;例如,刪除上例在JXGL數(shù)據(jù)庫中為SC表的“Sno”列創(chuàng)立的外鍵約束。ALTERTABLESCDROPCONSTRAINTc5;創(chuàng)立人事關系RSGX數(shù)據(jù)庫,并定義職工和部門兩個關系模式:職工〔職工號,姓名,年齡,職務,工資,部門號部門〔部門號,名稱,經(jīng)理名,,其中部門號為主碼;要求在模式中完成以下完整性約束條件的定義:定義每個模式的主碼;定義參照完整性;60歲。6視圖試驗目的:把握分別用SQLServer企業(yè)治理器和查詢分析器創(chuàng)立、刪除、查詢、更視圖的方法。嫻熟把握創(chuàng)立、刪除、查詢和更視圖的SQL語句的用法,加深理解視圖的四種用途。試驗內(nèi)容:基于試驗一創(chuàng)立的教學治理JXGL數(shù)據(jù)庫,參考教材視圖的SQL操作實例,實現(xiàn)視圖的創(chuàng)立、刪除、查詢和更操作?;谠囼炓粍?chuàng)立的供給系統(tǒng)GYXT數(shù)據(jù)庫,實現(xiàn)視圖的創(chuàng)立、刪除、查詢和更操作。試驗步驟:在教學治理JXGL數(shù)據(jù)庫中進展如下操作:建立一個名為“CS_Student”的計算機系學生視圖,并要求進展修改和插入操作時仍須保證該視圖只有計算機系的學生〔SdeptCS將顯示Student〕企業(yè)治理器方法:“屬性”“運行”按鈕“驗證SQ按鈕關系圖窗格“屬性”“運行”按鈕“驗證SQ按鈕關系圖窗格網(wǎng)格窗格SQL窗格結果窗格6.1視圖設計器②單擊“添加表”按鈕,翻開“添加表”對話框,如圖6.2所示,可從該對話框中選擇建立視圖的基表或視圖或函數(shù)。這里,我們選擇STUDENT表,單擊“添加”按鈕,將表添加到視圖設計器中,關閉“添加表”對話框。6.2“添加表”對話框③此時,STUDENT表消滅在視圖設計器的關系圖窗格中。依據(jù)建視圖的需要,從表中STUDENT表中的SnoSname、SsexSage④在網(wǎng)格窗格中的“準則”欄中設置過濾記錄的條件。這里需要設置的條件是Sdept‘CS’”,Sdep=‘CSQLSQL單擊“運行”按鈕,在結果窗格中預覽視圖返回的結果,如圖6.36.3視圖結果⑥單擊工具欄的“保存”按鈕,彈出“另存為”對話框,輸入視圖名“CS_Studen6.4CS_Student消滅在企業(yè)治理器中。查詢分析器方法:

6.4“另存為”對話框翻開查詢分析器,在查詢窗格中輸入以下SQL語句,然后運行,輸出結果。CREATEVIEWCS_StudentASSELECTSno,Sname,Ssex,SageFROMStudentWHERESdept=”CS”WITHCHECKOPTION以下操作只需寫出查詢分析器方法的SQL操作語句。建立計算機系選修了1號課程的學生的視圖CS_S1〔注:使用上題建立的視圖CS_Student〕刪除視圖CS_S1。在計算機系學生視圖CS_Student90分以上的學生。向計算機系學生視圖CS_Student中插入一個生記錄,其中學號為95030,姓名為20,男生。在計算機系學生視圖CS_Student95030的學生姓名改為“李四刪除計算機系學生視圖CS_Student95030的學生記錄。在供給系統(tǒng)GYXT數(shù)據(jù)庫中進展如下操作:創(chuàng)立視圖VSJ,它記錄了給“三建”工程工程的供給零件的狀況,包括供給商號、零件號和零件數(shù)量。對VSJ視圖查詢S1供給商的供貨狀況。思考題:視圖的四種用途是什么?參考答案1答案3.(1)CREATEDATABASEGYXTCREATETABLES(SNOCHAR(2)PRIMARYKEY(SNO),SNAMECHAR(20),CITYCHAR(20));CREATETABLEP(PNOCHAR(2)PRIMARYKEY(PNO),PNAMECHAR(20),COLORCHAR(10),WEIGHTINT);CREATETABLEJ(JNOCHAR(2)PRIMARYKEY(JNO),JNAMECHAR(20),CITYCHAR(20));CREATETABLESPJ(SNOCHAR(2),PNOCHAR(2),JNOCHAR(2),QTYINT,PRIMARYKEY(SNO,PNO,JNO),FOREIGNKEY(SNO)REFERENCESS(SNO),FOREIGNKEY(PNO)REFERENCESP(PNO),FOREIGNKEY(JNO)REFERENCESJ(JNO),);2答案(1)selectsno,snamefromstudentwheresdept=MAselectdistinctsnofromscselectsno,gradefromsc,o=oandcname=數(shù)學orderbygradedesc,snoselectsno,grade*0.8fromsc,coursewheregradebetween80and90andcname=數(shù)學o=oselect*fromstudentwheresdeptin(?MA,CS)andsnamelike劉%selectsno,cnofromscwheregradeisNULLselectstudent.sno,sname,ssex,sage,sdept,cnogradefromstudentleftouterjoinsconstudent.sno=sc.snoselectstudent.sno,sname,cname,gradefromstudent,sc,coursewherestudent.sno=o=oselectstudent.sno,sname,gradefromstudent,sc,coursewherestudent.sno=o=oandsname=數(shù)學andgrade>=90selectFIRST.cno,SECOND.cpnofromcourseFIRST,courseSECONDwhereFIRST.cpno=SECOND.cno(1)selectdistinctsnofromSPJwherejno=J1selectdistinctsnofromSPJwherejno=J1andpno=P1selectpno,SUM(qty)fromSPJgroupbypno3答案1.(1)selectstudent.sno,snamefromstudent,sc,coursewherestudent.sno=o=oandcname=數(shù)學selectstudent.sno,gradefromstudent,sc,coursewherestudent.sno=o=oandcname=數(shù)學andgrade>(selectgradeformsc,student,coursewherestudent.sno=o=oandcname=數(shù)學andsname=)select*fromstudentwheresdept<>CSandsage<(selectmax(sage)fromstudentwheresdept=CS)select*fromstudentwheresdept<>CSandsage<all(selectsagefromstudentwheresdept=CS)selectsnamefromstudent,sc,coursewherestudent.sno=o=oandcname=數(shù)學selectsnamefromstudentwheresnonotin(selectsnofromscwherecno=(selectcnofromcoursewherecname=))**(7)selectsnamefromstudentwherenotexists(select*fromcoursewherenotexists(select*fromscwheresno=student.snoandcno=o))**(8)selectdistinctsnofromscscxwherenotexists(select*fromscscywherescy.sno=95002andnotexists(select*fromscsczwherescz.sno=o=o))selectcno,count(*),avg(grade)fromscgroupbycnoselectsno,avg(grade)fromscwheregrade>60groupbysnohavingcount(*)>=2selectsno,avg(grade)fromscwheregrade>60andsnolike?95%?groupbysnohavingcount(*)>=2orderby2selectsno,avg(grade),count(*)fromscwheregrade>60groupbysnoorderby2desc,3descselectcno,avg(grade),count(*)fromscwheregrade>60groupbycnoorderby2desc,3desc2.(1)selectdistinctsnofromSPJwherejno=?J1?andpnoin(selectpnofromPwherecolor=?紅?)(2)selectsnamefromSwheresnoin(selectsnofromSPJgroupbysnohavingSUM(qty)>=1000)4答案values(?95020?,?陳冬?,?M?,18,?IS?)insertintoscvalues(?95020?,?1?)createtabledeptage(sdeptchar(20),avgagesmallint);insertintodeptageselectsdept,AVG(sa

溫馨提示

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

評論

0/150

提交評論