數(shù)據(jù)庫(kù)課本所有例題_第1頁(yè)
數(shù)據(jù)庫(kù)課本所有例題_第2頁(yè)
數(shù)據(jù)庫(kù)課本所有例題_第3頁(yè)
數(shù)據(jù)庫(kù)課本所有例題_第4頁(yè)
數(shù)據(jù)庫(kù)課本所有例題_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第一章例2.1創(chuàng)建數(shù)據(jù)庫(kù)student,并指定數(shù)據(jù)庫(kù)的數(shù)據(jù)文件所在位置、初始容量、最大容量和文件增長(zhǎng)量。例2.2創(chuàng)建數(shù)據(jù)庫(kù)teaching,并指定數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和日志文件的所在位置、初始容量、最大容量和文件增長(zhǎng)量。例2.3為student數(shù)據(jù)庫(kù)增加一個(gè)日志文件。例2.4修改student數(shù)據(jù)庫(kù)的排序規(guī)則。例2.5給student數(shù)據(jù)庫(kù)添加文件組studentfgrp,再添加數(shù)據(jù)文件studentfile.ndf到文件組studentfgrp中。例2.6將名為student數(shù)據(jù)庫(kù)改名為STUDENTDB。例2.7刪除已創(chuàng)建的數(shù)據(jù)庫(kù)student。例2.8文件和文件組示例。在SQLServer2005實(shí)例上創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)包括一個(gè)主數(shù)據(jù)文件、一個(gè)用戶定義文件組和一個(gè)日志文件。主數(shù)據(jù)文件在主文件組中,而用戶定義文件組包含兩個(gè)次要數(shù)據(jù)文件。ALTERDATABASE語(yǔ)句將用戶定義文件組指定為默認(rèn)文件組。例2.9為test01創(chuàng)建數(shù)據(jù)庫(kù)快照第三章例3.1利用CREATETABLE命令建立課程信息表course,表結(jié)構(gòu)如表3.9所示。例3.2利用CREATETABLE命令建立學(xué)生分?jǐn)?shù)表score,表結(jié)構(gòu)如表3.10所示。該表中主鍵由兩個(gè)列構(gòu)成。例3.3利用CREATETABLE命令建立教師信息表teacher表結(jié)構(gòu)如表3.11所示。該表中列取值有”是”和”否”兩種形式。例3.4創(chuàng)建表結(jié)構(gòu)如表3.12所示的班級(jí)信息表class。然后查看該表的有關(guān)CREATETABLE命令腳本信息。例3.5為了完善teaching數(shù)據(jù)庫(kù)的表間聯(lián)系,創(chuàng)建表結(jié)構(gòu)如所示的紐帶表teach_class。然后查看該表的有關(guān)CREATETABLE命令腳本信息。例3.6在test01數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)新表,然后修改其列屬性。例3.7修改test01中表student1的列column_class數(shù)據(jù)類型和名稱。例3.8向teaching數(shù)據(jù)庫(kù)中的score表中添加數(shù)據(jù)。例3.9更改teaching數(shù)據(jù)庫(kù)中的score表中的學(xué)號(hào)為0824113307、課程號(hào)為c05127的期末成績(jī)修改為87。例3.10為數(shù)據(jù)庫(kù)test01中表student1輸入3行數(shù)據(jù),然后將列st_class的值全部改為jsj1012。例3.11刪除數(shù)據(jù)庫(kù)test01中表student1的列st_class的值為jsj1012的行。例3.12在數(shù)據(jù)庫(kù)test01中表stud,為表添加、刪除行和列,再刪除該表。例3.13局部臨時(shí)表的創(chuàng)建于數(shù)據(jù)輸入例3.14為數(shù)據(jù)庫(kù)teaching中的班級(jí)表class的列classno創(chuàng)建FOREIGNKEY約束,并將其中的classname、department,monitor的"允許空”修改為NOTNULL。例3.15為數(shù)據(jù)庫(kù)teaching中的成績(jī)表score的兩個(gè)歹Uusually和final添加CHECK約束,限定其值在0~100范圍內(nèi)。例3.16為數(shù)據(jù)庫(kù)teaching中的學(xué)生信息表student的列Email創(chuàng)建一個(gè)UNIQUE約束。例3.17為數(shù)據(jù)庫(kù)teaching中表score的列studentno創(chuàng)建一個(gè)FOREIGNKEY約束。例3.18利用命令刪除為數(shù)據(jù)庫(kù)teaching中表score的一約束FK_score_student1。例3.19為數(shù)據(jù)庫(kù)teaching創(chuàng)建一條規(guī)則,該規(guī)則規(guī)定凡是分?jǐn)?shù)類的列值必須在0-100之間。第四章例4.1聲明一個(gè)@myvar變量,然后將一個(gè)字符串值放在變量中,再輸出@myvar變量的值。例4.2顯示到當(dāng)前日期和時(shí)間為止試圖登錄SQLServer2005的次數(shù)。例4.3為前面的例子添加注釋。例4.4通配符與邏輯運(yùn)算符LIKE舉例。在數(shù)據(jù)庫(kù)teaching中可以用檢查約束來驗(yàn)證表student的列Email的值。例4.5邏輯運(yùn)算符IN的使用方法。例4.6邏輯運(yùn)算符BETWEEN的使用方法。例4.7輸出下列函數(shù)的值CEILING<>,FLOOR<>,ROUND<>函數(shù)。例4.8從GETDATE函數(shù)返回的日期中提取年份、月份和天數(shù)值并輸出。例4.9日期和時(shí)間函數(shù)的使用示例。例4.10使用LTRIM函數(shù)刪除字符變量中的起始空格。例4.11在Transact-SQL中使用IF語(yǔ)句。例4.12用BEGIN和END語(yǔ)句可使IF語(yǔ)句在計(jì)算結(jié)果為FALSE時(shí)跳過語(yǔ)句塊。例4.13循環(huán)控制語(yǔ)句WHILE的使用方法。例4.14簡(jiǎn)單CASE語(yǔ)句舉例。例4.15搜索CASE語(yǔ)句舉例。例4.16利用GOTO語(yǔ)句求出從1加到7的總和。例4.17使用WAITFORTIME語(yǔ)句,以便在晚上10:20:17執(zhí)行存儲(chǔ)過程sp_help。例4.18在一個(gè)過程中使用TRY...CATCH語(yǔ)句,先讓SELECT語(yǔ)句產(chǎn)生除數(shù)為0的錯(cuò)誤,該錯(cuò)誤將使得CATCH塊的執(zhí)行。第五章例5.1查詢表student中女生的相關(guān)信息。例5.2列出所有course的職員課程號(hào)、課程名和學(xué)分。例5.3查詢表student中入學(xué)成績(jī)?cè)?50分以上的學(xué)生的學(xué)號(hào)、姓名和電話信息。例5.4查詢表student中入學(xué)成績(jī)?cè)?80分以上的學(xué)生的學(xué)號(hào)、姓名、電話和班級(jí)名稱信息。在FROM子句中使用AS關(guān)鍵字為表指派一個(gè)臨時(shí)名稱。例5.5在score表中顯示期中、期末成績(jī)都高于85分的學(xué)生學(xué)號(hào)、課程號(hào)和成績(jī)。例5.6查詢選修課稱號(hào)為C05109或C06108且期末成績(jī)大于等于85分學(xué)生的學(xué)號(hào)、課程號(hào)和成績(jī)。例5.7查詢計(jì)算機(jī)學(xué)院的具有高級(jí)職稱教師的教師號(hào)、姓名和從事專業(yè)。例5.8利用SELECT...INTO創(chuàng)建新表。在teaching數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)新表學(xué)生成績(jī)st_score。包括學(xué)生學(xué)號(hào)、姓名、課程號(hào)和期末成績(jī)。例5.9查詢數(shù)據(jù)庫(kù)test01中"獎(jiǎng)學(xué)金"表中獲得獎(jiǎng)學(xué)金的學(xué)生的學(xué)號(hào)、班級(jí)號(hào)、綜合測(cè)評(píng)和班級(jí)名次情況。例5.10在student表中1989年以后出生的學(xué)生的學(xué)號(hào)、姓名、入學(xué)成績(jī)和Email。例5.11在student表中顯示所有姓何或姓韓的學(xué)生的姓名、生日和Email。例5.12在student表中顯示手機(jī)號(hào)開始3位不是131的學(xué)生姓名、電話和Email。例5.13在student表中顯示所有1989年或1月份出生的學(xué)生的姓名、生日和Email。例5.14查詢選修課程號(hào)為c05109的學(xué)生學(xué)號(hào)和期末成績(jī),并且要求平時(shí)成績(jī)?cè)?8到95之間。例5.15查詢選修課程號(hào)為c05103的學(xué)生學(xué)號(hào)和總評(píng)成績(jī)并且要求期末成績(jī)不在78到90之間。其中,總評(píng)成績(jī)成績(jī)的計(jì)算公式為:總評(píng)成績(jī)=Final*0.7+usually*0.3例5.16查詢學(xué)號(hào)分別為的0824113307、0925111109和0935222201的學(xué)生學(xué)號(hào)、課程號(hào)、平時(shí)成績(jī)和期末成績(jī)。例5.17查詢出生日期在1989年以后的學(xué)生的學(xué)號(hào)、姓名、電話和年齡。例5.18在student表中查詢學(xué)生的學(xué)號(hào)、姓名和入學(xué)成績(jī),并按照入學(xué)成績(jī)的降序排列。例5.19在student表中查詢學(xué)號(hào)大于0923000000的學(xué)生的學(xué)號(hào)、姓名、電話和Email,并按照姓名的升序排序。例5.20在score表中查詢總評(píng)成績(jī)大于85的學(xué)生的學(xué)號(hào)、課程號(hào)和總評(píng)成績(jī)并先按照課程號(hào)的升序、再按照總評(píng)成績(jī)的降序排列。例5.21在st_score表中查詢期末成績(jī)含有高于85的學(xué)生的學(xué)號(hào)和姓名,并按照姓名排序。例5.22利用SELECT語(yǔ)句從student表中返回入學(xué)成績(jī)前5名的學(xué)生的學(xué)號(hào)、姓名、分?jǐn)?shù)和電話。例5.23利用SELECT語(yǔ)句從student表中返回入學(xué)成績(jī)排在前35%的學(xué)生的學(xué)號(hào)、姓名、分?jǐn)?shù)和電話。例5.24利用GROUPBY子句分組,顯示每個(gè)學(xué)生的學(xué)號(hào)和平均總評(píng)成績(jī)。例5.25統(tǒng)計(jì)student表中的男女學(xué)生的人數(shù)。例5.26利用GROUPBY子句對(duì)score表數(shù)據(jù)分組顯示總評(píng)成績(jī)高于85分的每個(gè)學(xué)生的學(xué)號(hào)和平均總評(píng)成績(jī)。例5.27查詢選課在3門以上且各門課程期末成績(jī)均高于75分的學(xué)生的學(xué)號(hào)及其總成績(jī)查詢結(jié)果按總成績(jī)降序列出。例5.28查看student表中,入學(xué)成績(jī)?cè)?88分以上的學(xué)生的學(xué)號(hào)、出生日期和電話,且年齡最小的學(xué)生的生日。例5.29分別查詢student表中入學(xué)成績(jī)?cè)?50分以上的男女學(xué)生的學(xué)號(hào)、性別、出生日期和電話,且年齡最小的男女學(xué)生的生日。例5.30查詢選修課程號(hào)為C05109號(hào)課程的期末最高分、最低分及之間相差的分?jǐn)?shù)例5.31通過查詢求09級(jí)學(xué)生的總數(shù)。例5.32查詢選課少于3門的學(xué)生的學(xué)號(hào)及其選課的門數(shù)。例5.33查詢score表中各門課程的課程號(hào)及期末平均成績(jī)。例5.34查詢score表中學(xué)生各科期末的總成績(jī)大于280的學(xué)生學(xué)號(hào)及總成績(jī)。第六章例6.1查詢選修課程號(hào)為C05109的學(xué)生的學(xué)號(hào)、姓名、和期末成績(jī)。例6.2查詢選修課程號(hào)為C05103且平時(shí)成績(jī)高于80分的學(xué)生的學(xué)號(hào)、姓名、平時(shí)成績(jī)和期末成績(jī)。例6.3利用左外連接方式查詢08級(jí)學(xué)生的學(xué)號(hào)、姓名、平時(shí)成績(jī)和期末成績(jī)。例6.4利用右外連接方式查詢教師的排課情況。例6.5利用完全外連接方式查詢教師的排課情況。例6.6顯示student表和score表的笛卡兒積。例6.7查詢08級(jí)學(xué)生的學(xué)號(hào)、姓名、課程名、期末成績(jī)及學(xué)分例6.8查詢計(jì)算機(jī)學(xué)院的老師的上課情況例6.9合并結(jié)果集示例。例6.10查詢學(xué)號(hào)為0828261367的學(xué)生的入學(xué)成績(jī)、所有學(xué)生的平均入學(xué)成績(jī)及該學(xué)生成績(jī)與所有學(xué)生的平均入學(xué)成績(jī)的差。例6.11獲取期末成績(jī)中含有高于93分的學(xué)生的姓名、學(xué)號(hào)、電話和Email例6.12查詢選修課程的多于2門、且期末成績(jī)均在85分以上的學(xué)生的學(xué)號(hào)、姓名、電話和Email。例6.13查詢期末成績(jī)比該選修課程平均期末成績(jī)低的學(xué)生的學(xué)號(hào)、課程號(hào)和期末成績(jī)。例6.14獲取期末成績(jī)高于85分、總評(píng)成績(jī)高于90分的學(xué)生的學(xué)號(hào)、課程號(hào)和總評(píng)成績(jī)。例6.15創(chuàng)建一個(gè)表sc,將score表中08級(jí)學(xué)生的相關(guān)數(shù)據(jù)添加到sc表中,并要求計(jì)算總評(píng)成績(jī)。例6.16將sc表中含有總分低于80的課程的學(xué)生總分增加5%。例6.17查詢student表中是否存在在1990年12月12日以后出生的學(xué)生如果存在,輸出學(xué)生的學(xué)號(hào)、姓名、生日和電話。例6.18使用STATIC關(guān)鍵字聲明全局游標(biāo)cEmploy。例6-19使用FETCH訪問游標(biāo)中的記錄例6.20使用游標(biāo)打印teacher表表格:例6.21使用嵌套游標(biāo)生成報(bào)表輸出08級(jí)每個(gè)學(xué)生的學(xué)號(hào)、各科課程號(hào)、總評(píng)成績(jī)和電話例6.21聲明游標(biāo),查看游標(biāo)對(duì)teacher表進(jìn)行檢索的狀態(tài)。例6.23利用sp_cursor_list系統(tǒng)存儲(chǔ)過程顯示游標(biāo)的屬性。例6.24利用BULKINSERT命令向teaching數(shù)據(jù)庫(kù)中的st_score數(shù)據(jù)表添加數(shù)據(jù)。例6.25在teaching數(shù)據(jù)庫(kù)中創(chuàng)建expic表,然后向該表添加新的記錄。例6.26使用OPENROWSET命令的方法添加大容量數(shù)據(jù)。第七章例7.1給出一程序在teaching數(shù)據(jù)庫(kù)中的student表的studentname列上創(chuàng)建唯一索引IDX_sname。例7.2給出一個(gè)程序,在teaching數(shù)據(jù)庫(kù)中的student表的studentno和classno列上創(chuàng)建組合索引IDX_sc。例7.3重新組織teaching數(shù)據(jù)庫(kù)中student表上的IDX_sc索引。例7.4重新生成teaching數(shù)據(jù)庫(kù)中student表上的IDX_sname索引,設(shè)置填充索引,將填充因子設(shè)置為80%,設(shè)置將中間排序結(jié)果存儲(chǔ)在tempdb中。例7.5重新生成teaching數(shù)據(jù)庫(kù)中test_index表上的C_studentno索引,將其修改為聚集唯一索引,并指定該索引的葉級(jí)頁(yè)的填充度為70%。例7.6刪除teaching數(shù)據(jù)庫(kù)中student表上的聚集索引C_studentno和非聚集索引UC_classno。例7.7給出一個(gè)程序在student表的studentno和classno上創(chuàng)建一個(gè)統(tǒng)計(jì)組studentclass,要求對(duì)所有記錄計(jì)算統(tǒng)計(jì)信息。例7.8通過DBCCSHOWSTATISTICS命令顯示student表IDX_sc索引的統(tǒng)計(jì)信息。KEVIN-PC.MyDBl-例了-8.叫|[^^|DECC5H-0W_5rATI5riCS(stadent,IDX_sciJ結(jié)果.一」消息NameUpdatedRowsRowsSampledStepsDensityAveragekeylengthStringIndex1IDX_sg]122120142;35PM99B132YESAlldensityAverageluengthColumns1D.1111111]20studentno2D.111111132studentno.classnoRANGE_HI_KEYRANGE_ROYVSEQ_ROWSDISTINCT_RANGE_ROWSAVG_RANGE_ROWS10B221112D8D1D12DS2411330711113092221C30901D14DS22221324D1D150925111109D1D1G0325121107D1D17D1D180937221508D1D1例7.9給出一個(gè)程序,更新student表IDX_sc索引的統(tǒng)計(jì)信息。例7.10給出一個(gè)程序,更新student表上所有索引的分布統(tǒng)計(jì)信息、。例7.11給出一個(gè)程序在teaching數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名稱為v_course的視圖,包含所有類別為"必修"的課程信息。例7.12給出一個(gè)程序在teaching數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)名稱為v_final的視圖,包含學(xué)生學(xué)號(hào)、姓名、課程號(hào)、課程名和期末成績(jī),按學(xué)號(hào)升序排序相同學(xué)號(hào)的記錄按課程號(hào)升序排序。例7.13給出一個(gè)程序,在teaching數(shù)據(jù)中創(chuàng)建一個(gè)名稱為v_max的視圖,查詢每個(gè)班最高分的課程名和分?jǐn)?shù)按班級(jí)號(hào)升序排序。例7.14通過v_final和v_course視圖查詢所有學(xué)生的學(xué)號(hào)、姓名和已修必修課的總學(xué)分。例7.15利用sysobjects和syscomments兩個(gè)系統(tǒng)表

溫馨提示

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

評(píng)論

0/150

提交評(píng)論