(完整版)SQL Server 數(shù)據(jù)庫案例教程課后習(xí)題答案_第1頁
(完整版)SQL Server 數(shù)據(jù)庫案例教程課后習(xí)題答案_第2頁
(完整版)SQL Server 數(shù)據(jù)庫案例教程課后習(xí)題答案_第3頁
(完整版)SQL Server 數(shù)據(jù)庫案例教程課后習(xí)題答案_第4頁
(完整版)SQL Server 數(shù)據(jù)庫案例教程課后習(xí)題答案_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

(完整版)SQLServer數(shù)據(jù)庫案例教程課后習(xí)題答案

姓名:__________考號:__________一、單選題(共10題)1.在SQLServer中,如何創(chuàng)建一個名為‘Students’的表,包含‘ID’(主鍵)、‘Name’和‘Age’三個字段?()A.CREATETABLEStudents(IDINTPRIMARYKEY,NameVARCHAR(50),AgeINT)B.CREATETABLEStudents(IDINT,NameVARCHAR(50),AgeINTPRIMARYKEY)C.CREATETABLEStudents(IDINT,NameVARCHAR(50),AgeINT,PRIMARYKEY(ID))D.CREATETABLEStudents(IDINT,NameVARCHAR(50),AgeINT,PRIMARYKEY(Name,Age))2.以下哪個SQL語句可以用來刪除名為‘Students’的表?()A.DROPTABLEStudentsB.DELETEFROMStudentsC.TRUNCATETABLEStudentsD.ALTERTABLEStudentsDROPCOLUMNID3.在SQLServer中,如何查詢所有年齡大于20歲的學(xué)生姓名?()A.SELECTNameFROMStudentsWHEREAge>20B.SELECTNameFROMStudentsWHEREAge>=20C.SELECTNameFROMStudentsWHEREAge<20D.SELECTNameFROMStudentsWHEREAge<=204.以下哪個函數(shù)可以用來獲取當(dāng)前日期和時間?()A.GETDATE()B.CURDATE()C.CURRENT_TIMESTAMP()D.NOW()5.在SQLServer中,如何更新‘Students’表中所有學(xué)生的年齡為21歲?()A.UPDATEStudentsSETAge=21B.UPDATEStudentsSETAge=21WHEREName='John'C.UPDATEStudentsSETName='John'WHEREAge=21D.UPDATEStudentsSETAge=21WHEREName='John'ANDAge=216.以下哪個SQL語句可以用來創(chuàng)建一個名為‘Courses’的視圖,顯示所有學(xué)生的姓名和對應(yīng)的課程名稱?()A.CREATEVIEWCoursesASSELECTName,CourseNameFROMStudentsB.CREATEVIEWCoursesASSELECTName,CourseNameFROMStudentsWHEREID=1C.CREATEVIEWCoursesASSELECTName,CourseNameFROMStudentsWHEREAge>20D.CREATEVIEWCoursesASSELECTName,CourseNameFROMStudentsWHEREName='John'7.在SQLServer中,如何插入一條新的學(xué)生記錄到‘Students’表中?()A.INSERTINTOStudents(ID,Name,Age)VALUES(1,'John',20)B.INSERTINTOStudents(Name,Age)VALUES('John',20)C.INSERTINTOStudents(ID,Name,Age)VALUES('John',20,1)D.INSERTINTOStudents(ID,Name,Age)VALUES(1,'John','20')8.以下哪個SQL語句可以用來刪除所有年齡小于18歲的學(xué)生記錄?()A.DELETEFROMStudentsWHEREAge<18B.DELETEFROMStudentsWHEREAge<=18C.DELETEFROMStudentsWHEREAge>18D.DELETEFROMStudentsWHEREAge>=189.在SQLServer中,如何創(chuàng)建一個名為‘Teachers’的表,包含‘ID’(主鍵)、‘Name’和‘Department’三個字段?()A.CREATETABLETeachers(IDINTPRIMARYKEY,NameVARCHAR(50),DepartmentVARCHAR(50))B.CREATETABLETeachers(IDINT,NameVARCHAR(50),DepartmentVARCHAR(50)PRIMARYKEY)C.CREATETABLETeachers(IDINT,NameVARCHAR(50),DepartmentVARCHAR(50),PRIMARYKEY(ID))D.CREATETABLETeachers(IDINT,NameVARCHAR(50),DepartmentVARCHAR(50),PRIMARYKEY(Name,Department))10.以下哪個SQL語句可以用來選擇所有學(xué)生的姓名和年齡?()A.SELECTName,AgeFROMStudentsB.SELECTNameASName,AgeASAgeFROMStudentsC.SELECTStudents.Name,Students.AgeFROMStudentsD.SELECTName,AgeASStudentsFROMStudents二、多選題(共5題)11.以下哪些是SQLServer中常用的數(shù)據(jù)類型?()A.INTB.VARCHARC.DATED.BITE.TEXTF.FLOATG.UNIQUE12.以下哪些操作可以在SQLServer中執(zhí)行事務(wù)?()A.INSERTB.UPDATEC.DELETED.COMMITE.ROLLBACKF.SELECT13.在SQLServer中,以下哪些是創(chuàng)建索引的方法?()A.CREATEINDEXB.ALTERTABLEC.PRIMARYKEYD.UNIQUEE.FOREIGNKEYF.INDEX14.以下哪些是SQLServer中用于處理空值的函數(shù)?()A.ISNULLB.COALESCEC.NULLIFD.NVLE.IFNULL15.以下哪些是SQLServer中用于數(shù)據(jù)導(dǎo)入導(dǎo)出的方法?()A.BCPB.BULKINSERTC.OPENROWSETD.OPENXMLE.SELECTINTO三、填空題(共5題)16.在SQLServer中,使用CREATEDATABASE語句創(chuàng)建數(shù)據(jù)庫時,如果不指定數(shù)據(jù)文件和日志文件的位置,則默認存儲在SQLServer的實例目錄下。默認的數(shù)據(jù)文件擴展名是______,日志文件的擴展名是______。17.在SQLServer中,使用______關(guān)鍵字可以設(shè)置字段是否允許NULL值。18.在SQLServer中,使用______關(guān)鍵字可以創(chuàng)建一個主鍵約束。19.在SQLServer中,使用______關(guān)鍵字可以創(chuàng)建一個外鍵約束,以實現(xiàn)表與表之間的引用完整性。20.在SQLServer中,使用______關(guān)鍵字可以修改已存在的表結(jié)構(gòu)。四、判斷題(共5題)21.在SQLServer中,所有的數(shù)據(jù)類型都可以在創(chuàng)建表時指定。()A.正確B.錯誤22.在SQLServer中,一個表只能有一個主鍵。()A.正確B.錯誤23.在SQLServer中,使用TRUNCATETABLE語句可以刪除表中的所有數(shù)據(jù),但不會刪除表結(jié)構(gòu)。()A.正確B.錯誤24.在SQLServer中,可以使用SELECTINTO語句將查詢結(jié)果插入到新表中。()A.正確B.錯誤25.在SQLServer中,外鍵約束可以防止數(shù)據(jù)不一致。()A.正確B.錯誤五、簡單題(共5題)26.請解釋SQLServer中的事務(wù)是什么?它有哪些基本特性?27.在SQLServer中,如何使用存儲過程?存儲過程有哪些優(yōu)點?28.什么是索引?索引在數(shù)據(jù)庫中有什么作用?29.請描述SQLServer中的觸發(fā)器是什么?觸發(fā)器有哪些類型?30.在SQLServer中,如何實現(xiàn)數(shù)據(jù)的備份和還原?備份和還原有哪些類型?

(完整版)SQLServer數(shù)據(jù)庫案例教程課后習(xí)題答案一、單選題(共10題)1.【答案】C【解析】正確答案是C。在創(chuàng)建表時,主鍵應(yīng)該放在字段列表的最后,并且使用PRIMARYKEY關(guān)鍵字來指定主鍵。2.【答案】A【解析】正確答案是A。DROPTABLE語句用于刪除整個表,而DELETEFROM用于刪除表中的記錄,TRUNCATETABLE用于刪除表中的所有記錄但不刪除表結(jié)構(gòu),ALTERTABLE用于修改表結(jié)構(gòu)。3.【答案】A【解析】正確答案是A。查詢條件Age>20表示查詢年齡大于20歲的記錄。4.【答案】A【解析】正確答案是A。GETDATE()函數(shù)返回當(dāng)前的日期和時間。CURDATE()返回當(dāng)前日期,CURRENT_TIMESTAMP()和NOW()在某些數(shù)據(jù)庫中也可以返回當(dāng)前日期和時間,但GETDATE()是SQLServer的標(biāo)準函數(shù)。5.【答案】A【解析】正確答案是A。UPDATE語句需要指定更新哪些記錄,如果沒有WHERE子句,則默認更新所有記錄。6.【答案】A【解析】正確答案是A。視圖是一個虛擬表,它基于查詢結(jié)果創(chuàng)建。這里創(chuàng)建的視圖包含所有學(xué)生的姓名和課程名稱。7.【答案】A【解析】正確答案是A。INSERTINTO語句用于向表中插入新記錄,字段和值需要正確匹配。8.【答案】A【解析】正確答案是A。DELETE語句用于刪除表中的記錄,WHERE子句指定刪除條件。9.【答案】A【解析】正確答案是A。在創(chuàng)建表時,主鍵應(yīng)該放在字段列表的最后,并且使用PRIMARYKEY關(guān)鍵字來指定主鍵。10.【答案】A【解析】正確答案是A。SELECT語句用于選擇表中的列,列名不需要使用表名前綴。二、多選題(共5題)11.【答案】ABCDEF【解析】正確答案是A,B,C,D,E,F。這些是SQLServer中常用的數(shù)據(jù)類型,用于定義表中的列。INT是整數(shù)類型,VARCHAR是可變長度字符串類型,DATE是日期類型,BIT是布爾類型,TEXT是長文本類型,F(xiàn)LOAT是浮點數(shù)類型。UNIQUE是約束,不是數(shù)據(jù)類型。12.【答案】ABCDE【解析】正確答案是A,B,C,D,E。INSERT,UPDATE,DELETE是數(shù)據(jù)修改操作,COMMIT用于提交事務(wù),使修改生效,ROLLBACK用于回滾事務(wù),撤銷所有未提交的修改。SELECT不是事務(wù)操作,它只是查詢數(shù)據(jù)。13.【答案】ACD【解析】正確答案是A,C,D。CREATEINDEX語句用于創(chuàng)建索引,PRIMARYKEY和UNIQUE是創(chuàng)建唯一索引的約束關(guān)鍵字。ALTERTABLE可以用于修改表結(jié)構(gòu),包括添加索引,但不是直接創(chuàng)建索引的方法。FOREIGNKEY是外鍵約束,不是索引創(chuàng)建的方法。INDEX關(guān)鍵字在CREATEINDEX語句中用于指定索引名。14.【答案】ABCE【解析】正確答案是A,B,C,E。ISNULL和COALESCE可以將空值替換為指定的值,NULLIF如果兩個值相等則返回NULL,IFNULL是COALESCE的另一種形式。NVL是Oracle數(shù)據(jù)庫中的函數(shù),在SQLServer中不適用。15.【答案】ABCDE【解析】正確答案是A,B,C,D,E。BCP(BulkCopyProgram)用于大量數(shù)據(jù)的導(dǎo)入和導(dǎo)出,BULKINSERT可以直接從文本文件或其他源插入數(shù)據(jù)到表中,OPENROWSET和OPENXML用于從非關(guān)系數(shù)據(jù)源查詢數(shù)據(jù),SELECTINTO可以將查詢結(jié)果插入到新表中。三、填空題(共5題)16.【答案】MDFLDF【解析】在SQLServer中,數(shù)據(jù)文件(DataFile)的默認擴展名是MDF(MasterDataFile),日志文件(LogFile)的默認擴展名是LDF(LogFile)。17.【答案】NULL【解析】在SQLServer中,使用NULL關(guān)鍵字可以指定字段是否可以包含NULL值,即是否可以為空。如果不指定NULL關(guān)鍵字,則默認不允許NULL值。18.【答案】PRIMARYKEY【解析】在SQLServer中,使用PRIMARYKEY關(guān)鍵字可以為表中的特定列創(chuàng)建主鍵約束,確保每條記錄在該列上的值是唯一的。19.【答案】FOREIGNKEY【解析】在SQLServer中,使用FOREIGNKEY關(guān)鍵字可以創(chuàng)建一個外鍵約束,指定一個或多個列作為外鍵,它們與另一個表的主鍵相關(guān)聯(lián),從而確保引用完整性。20.【答案】ALTERTABLE【解析】在SQLServer中,使用ALTERTABLE關(guān)鍵字可以修改表的結(jié)構(gòu),包括添加或刪除列、修改列的數(shù)據(jù)類型、設(shè)置或刪除約束等。四、判斷題(共5題)21.【答案】正確【解析】在創(chuàng)建表時,確實可以指定大多數(shù)數(shù)據(jù)類型,包括數(shù)值、字符串、日期時間等,但也有一些特殊的數(shù)據(jù)類型,如XML、Geography等,可能需要額外的配置或是在特定上下文中使用。22.【答案】正確【解析】在SQLServer中,每個表只能有一個主鍵,主鍵用于唯一標(biāo)識表中的每一行。雖然可以有多個唯一約束,但它們不能同時作為主鍵。23.【答案】正確【解析】TRUNCATETABLE語句用于刪除表中的所有數(shù)據(jù)行,但不刪除表的定義或索引。它比DELETE語句更高效,因為它不會觸發(fā)刪除觸發(fā)器。24.【答案】正確【解析】SELECTINTO語句用于創(chuàng)建一個新表并將查詢結(jié)果插入到這個新表中。這是在SQLServer中復(fù)制表結(jié)構(gòu)和數(shù)據(jù)的一種方法。25.【答案】正確【解析】外鍵約束確保了表之間的關(guān)系,防止了不匹配的記錄被插入或更新。如果外鍵約束被違反,SQLServer將不允許該操作,從而維護了數(shù)據(jù)的一致性。五、簡答題(共5題)26.【答案】事務(wù)是數(shù)據(jù)庫管理系統(tǒng)的基本功能之一,它是一系列操作序列,這些操作要么全部完成,要么全部不做,以保持數(shù)據(jù)的一致性。事務(wù)的基本特性包括原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持久性(Durability),通常簡稱為ACID特性?!窘馕觥吭有源_保事務(wù)中的所有操作要么全部成功,要么全部失?。灰恢滦源_保事務(wù)執(zhí)行后,數(shù)據(jù)庫的狀態(tài)必須符合業(yè)務(wù)規(guī)則;隔離性防止多個事務(wù)同時操作同一數(shù)據(jù)時產(chǎn)生沖突;持久性確保一旦事務(wù)提交,其對數(shù)據(jù)庫的改變就是永久性的。27.【答案】在SQLServer中,存儲過程是一組為了完成特定功能的SQL語句集合,它被編譯并存儲在數(shù)據(jù)庫中。要使用存儲過程,可以使用EXECUTE或EXEC語句。存儲過程的優(yōu)點包括提高性能、代碼重用、安全性、易于維護等。【解析】存儲過程可以提高SQL語句的執(zhí)行效率,因為它被編譯后存儲在數(shù)據(jù)庫中,避免了每次執(zhí)行時重新編譯。代碼重用使得相同的邏輯可以在多個地方重復(fù)使用,提高了開發(fā)效率。安全性方面,存儲過程可以限制對數(shù)據(jù)庫的直接訪問,并通過

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論