2023年電大本科數(shù)據(jù)庫(kù)應(yīng)用技術(shù)作業(yè)答案_第1頁(yè)
2023年電大本科數(shù)據(jù)庫(kù)應(yīng)用技術(shù)作業(yè)答案_第2頁(yè)
2023年電大本科數(shù)據(jù)庫(kù)應(yīng)用技術(shù)作業(yè)答案_第3頁(yè)
2023年電大本科數(shù)據(jù)庫(kù)應(yīng)用技術(shù)作業(yè)答案_第4頁(yè)
2023年電大本科數(shù)據(jù)庫(kù)應(yīng)用技術(shù)作業(yè)答案_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《數(shù)據(jù)庫(kù)應(yīng)用技術(shù)》作業(yè)及答案第一章思考與練習(xí)題一、選擇題1.三級(jí)模式間存在兩種映射,它們是(C)。A.模式與子模式間,模式與內(nèi)模式間B.子模式與內(nèi)模式間,外模式與內(nèi)模式間C.外模式與模式間,模式與內(nèi)模式間D.模式與內(nèi)模式間,模式與模式間2.SQLServer系統(tǒng)中的所有系統(tǒng)級(jí)信息存儲(chǔ)于哪個(gè)數(shù)據(jù)庫(kù)(A)。A.masterB.modelC.tempdbD.msdb3.下面關(guān)于tempdb數(shù)據(jù)庫(kù)描述不對(duì)的的是(D)。A.是一個(gè)臨時(shí)數(shù)據(jù)庫(kù)B.屬于全局資源C.沒(méi)有權(quán)限限制D.是用戶(hù)建立新數(shù)據(jù)庫(kù)的模板4.在數(shù)據(jù)庫(kù)技術(shù)中,面向?qū)ο髷?shù)據(jù)模型是一種(B)。A.概念模型B.結(jié)構(gòu)模型C.物理模型D.形象模型5.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)常見(jiàn)的數(shù)據(jù)模型有(B)。A.網(wǎng)狀、關(guān)系和語(yǔ)義B.層次、關(guān)系和網(wǎng)狀C.環(huán)狀、層次和關(guān)系D.網(wǎng)狀、鏈狀和層次6.用戶(hù)看到的數(shù)據(jù)表,屬于數(shù)據(jù)庫(kù)系統(tǒng)三級(jí)模式中的(D)。A.外模式B.內(nèi)模式C.子模式D.模式7.對(duì)數(shù)據(jù)的插入屬于數(shù)據(jù)庫(kù)管理系統(tǒng)(B)的功能。A.數(shù)據(jù)定義B.?dāng)?shù)據(jù)操縱C.數(shù)據(jù)庫(kù)的運(yùn)營(yíng)管理D.數(shù)據(jù)庫(kù)的建立和維護(hù)8.保持?jǐn)?shù)據(jù)的完整性屬于數(shù)據(jù)庫(kù)管理系統(tǒng)(C)的功能。A.數(shù)據(jù)定義B.數(shù)據(jù)操縱C.數(shù)據(jù)庫(kù)的運(yùn)營(yíng)管理D.數(shù)據(jù)庫(kù)的建立和維護(hù)9.在SQLServer數(shù)據(jù)庫(kù)中,默認(rèn)情況下Sys通常是(C)。A.數(shù)據(jù)文獻(xiàn)的后綴B.事務(wù)日記文獻(xiàn)的后綴C.系統(tǒng)表表名的前綴D.輔助文獻(xiàn)的后綴二、填空題1.計(jì)算機(jī)數(shù)據(jù)解決技術(shù)大體經(jīng)歷了(人工管理)、(文獻(xiàn)管理)、(數(shù)據(jù)庫(kù)管理)等不同的發(fā)展階段。2.數(shù)據(jù)庫(kù)系統(tǒng)由(外模式)、(模式)和(內(nèi)模式)三級(jí)抽象模式構(gòu)成。3.?dāng)?shù)據(jù)庫(kù)管理系統(tǒng)的重要功能涉及(數(shù)據(jù)定義)、(數(shù)據(jù)操縱)、(數(shù)據(jù)庫(kù)的運(yùn)營(yíng)管理)、(數(shù)據(jù)庫(kù)的建立和維護(hù))。4.關(guān)系模型由三部分組成(數(shù)據(jù)結(jié)構(gòu))、(關(guān)系操作集合)和(關(guān)系的完整性)。5.SQLServer提供了大量易用的管理工具,比較常用的重要有(服務(wù)管理器)、(公司管理器)和(查詢(xún)分析器)。6.數(shù)據(jù)文獻(xiàn)的后綴是(mdf)。7.事務(wù)日記文獻(xiàn)的后綴是(ldf)。8.SQLServer數(shù)據(jù)庫(kù)分為(系統(tǒng)數(shù)據(jù)庫(kù))和(用戶(hù)數(shù)據(jù)庫(kù))兩種類(lèi)型。三、簡(jiǎn)答題1.什么是數(shù)據(jù)和數(shù)據(jù)解決?數(shù)據(jù)與信息的區(qū)別聯(lián)系是什么?參考答案:數(shù)據(jù)(Data)是一組表達(dá)數(shù)量、行動(dòng)和目的的非隨機(jī)的可鑒別的符號(hào)。數(shù)據(jù)解決通常涉及查找、記錄、分類(lèi)、修改、計(jì)算、匯總等各種方法。數(shù)據(jù)(Data)是一組表達(dá)數(shù)量、行動(dòng)和目的的非隨機(jī)的可鑒別的符號(hào)。信息(Information)是通過(guò)加工的,能對(duì)接受者的行為和決策產(chǎn)生影響的、有價(jià)值的數(shù)據(jù)。假如將數(shù)據(jù)比方為原料,那么信息就是數(shù)據(jù)通過(guò)加工而生產(chǎn)的產(chǎn)品,是有價(jià)值的數(shù)據(jù)。與原料和產(chǎn)品的概念相似,一個(gè)系統(tǒng)的產(chǎn)品也許是另一個(gè)系統(tǒng)的原料,那么一個(gè)系統(tǒng)的信息也許成為另一個(gè)系統(tǒng)的數(shù)據(jù)。2.數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)系統(tǒng)之間到底是什么關(guān)系?參考答案:數(shù)據(jù)庫(kù)就是各種相關(guān)數(shù)據(jù)的集合和容器。數(shù)據(jù)庫(kù)所保存的數(shù)據(jù)是指長(zhǎng)期儲(chǔ)存在計(jì)算機(jī)內(nèi)、有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)庫(kù)中的數(shù)據(jù)必須按一定的數(shù)據(jù)模型組織、描述和儲(chǔ)存,具有較小的冗余度、較高的數(shù)據(jù)獨(dú)立性和易擴(kuò)展性,并可以被一定范圍內(nèi)的各種用戶(hù)共享。數(shù)據(jù)庫(kù)管理系統(tǒng)是對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理的系統(tǒng)軟件,位于用戶(hù)和操作系統(tǒng)之間,為用戶(hù)或應(yīng)用程序提供訪問(wèn)數(shù)據(jù)庫(kù)的方法和工具。廣義上,數(shù)據(jù)庫(kù)系統(tǒng)就是采用了數(shù)據(jù)庫(kù)技術(shù)的計(jì)算機(jī)系統(tǒng),一般由數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)(及其開(kāi)發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶(hù)構(gòu)成。狹義上講,數(shù)據(jù)庫(kù)系統(tǒng)重要指數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)管理系統(tǒng),由于這兩者在應(yīng)用中的互相依賴(lài)性,所以在一般不引起混淆的情況下經(jīng)常把數(shù)據(jù)庫(kù)系統(tǒng)簡(jiǎn)稱(chēng)為數(shù)據(jù)庫(kù)。3.請(qǐng)描述一下SQLServer數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)。參考答案:SQLServer數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)涉及物理存儲(chǔ)結(jié)構(gòu)和邏輯存儲(chǔ)結(jié)構(gòu)兩個(gè)層面。在物理層面上,SQLServer數(shù)據(jù)庫(kù)是由兩個(gè)操作系統(tǒng)文獻(xiàn)組成的,即數(shù)據(jù)文獻(xiàn)和事務(wù)日記文獻(xiàn),它們的后綴分別是MDF和LDF。數(shù)據(jù)文獻(xiàn)重要用于存儲(chǔ)數(shù)據(jù),事務(wù)日記文獻(xiàn)重要用于存儲(chǔ)數(shù)據(jù)庫(kù)的更新情況等事務(wù)日記信息。在邏輯層次上,數(shù)據(jù)庫(kù)是由表、視圖、存儲(chǔ)過(guò)程等一系列數(shù)據(jù)對(duì)象組成的。當(dāng)采用SQLServer公司管理器將上述數(shù)據(jù)庫(kù)文獻(xiàn)“打開(kāi)”后,就能看到數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)了,如圖XXX所示。數(shù)據(jù)庫(kù)中的數(shù)據(jù)分別存儲(chǔ)在幾個(gè)不同的對(duì)象中,而這些對(duì)象是用戶(hù)在操作數(shù)據(jù)庫(kù)時(shí),實(shí)際可以看到和接觸到的,屬于邏輯存儲(chǔ)結(jié)構(gòu)。常用的數(shù)據(jù)庫(kù)對(duì)象重要涉及:表(Table)、索引(Index)、視圖(Views)、觸發(fā)器(Triggers)、存儲(chǔ)過(guò)程(StoreProcedures)、缺省(Default)、約束(Constraints)、用戶(hù)(Users)以及圖表(Diagram)和用戶(hù)自定義的數(shù)據(jù)類(lèi)型等。在以后的章節(jié)中,我們將逐步學(xué)習(xí)這些對(duì)象的使用方法。4.簡(jiǎn)述關(guān)系模型的組成。參考答案:系模型是目前最重要的一種數(shù)據(jù)模型。關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)采用關(guān)系模型作為數(shù)據(jù)的組織方式。關(guān)系模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系的完整性。數(shù)據(jù)結(jié)構(gòu)是指在關(guān)系模型中,無(wú)論是數(shù)據(jù)還是數(shù)據(jù)之間的聯(lián)系都是以二維表(關(guān)系)這一種簡(jiǎn)樸的結(jié)構(gòu)表達(dá)的,這即符合人們使用數(shù)據(jù)的習(xí)慣,同時(shí)也便于計(jì)算機(jī)實(shí)現(xiàn)。關(guān)系操作是指關(guān)系代數(shù)(或等價(jià)的關(guān)系演算)中并、交、差、選擇、投影、連接等。關(guān)系模型給出了關(guān)系操作的能力和特點(diǎn),但不對(duì)DBMS的語(yǔ)言給出具體的語(yǔ)法規(guī)定。關(guān)系語(yǔ)言的特點(diǎn)是高度的非過(guò)程化。其操作方式的特點(diǎn)是集合操作,即操作的對(duì)象和結(jié)果是集合,稱(chēng)為一次一集合的方式,而不是一次一個(gè)記錄的方式。關(guān)系完整性涉及實(shí)體完整性、參照完整性和用戶(hù)自己定義的完整性。實(shí)體完整性是保證數(shù)據(jù)庫(kù)中記錄的惟一性,即每個(gè)記錄的主鍵不能為空值,也不能與其他記錄的主鍵相同。參照完整性是保證表與表之間語(yǔ)意上的完整性,即當(dāng)一個(gè)表引用在另一個(gè)表中定義的實(shí)體時(shí),要保證這個(gè)實(shí)體的有效性。這兩種完整性是關(guān)系模型必須滿(mǎn)足的約束條件,應(yīng)當(dāng)由關(guān)系系統(tǒng)自動(dòng)支持。而用戶(hù)自定義完整性反映了用戶(hù)的規(guī)定,是用戶(hù)自行定義的。第二章思考與練習(xí)題一、選擇題1.下述關(guān)于索引的描述,對(duì)的的是(B)。A.撤消索引會(huì)同時(shí)撤消數(shù)據(jù)庫(kù)中與之相關(guān)的內(nèi)容B.建立索引后,會(huì)影響基本表的插入速度C.基本表的記錄數(shù)量越多,越不應(yīng)當(dāng)建立索引D.基本表的記錄越長(zhǎng),越不應(yīng)當(dāng)建立索引2.下述關(guān)于視圖的描述,對(duì)的的是(C)。A.視圖僅由一個(gè)基本表導(dǎo)出B.執(zhí)行視圖比在客戶(hù)端直接執(zhí)行SELECT語(yǔ)句的速度要慢C.在SQLServer中,可以像基本表同樣對(duì)視圖進(jìn)行查詢(xún)操作D.視圖存儲(chǔ)在客戶(hù)端的數(shù)據(jù)庫(kù)中3.假如希望從學(xué)生表中查詢(xún)出所有姓“張”的同學(xué),那么條件語(yǔ)句應(yīng)當(dāng)是(B)。A.Where姓名%‘張’B.Where姓名LIKE‘張%’C.Where姓名%‘LIKE張’D.Where姓名LIKE‘張’4.下列SQL語(yǔ)句中,可以完畢求某列最大值的是(B)。A.SELECTAVG(Age)FROMStudentB.SELECTMAX(Age)FROMStudentC.SELECTMIN(Age)FROMStudentD.SELECTCOUNT(*)FROMStudent二、填空題1.SQL數(shù)據(jù)定義語(yǔ)言的重要作用是創(chuàng)建存儲(chǔ)數(shù)據(jù)的結(jié)構(gòu),而數(shù)據(jù)操縱語(yǔ)言的重要作用則是向數(shù)據(jù)庫(kù)中填寫(xiě)數(shù)據(jù),具體涉及增長(zhǎng)、刪除、修改等操作。2.當(dāng)需要對(duì)查詢(xún)結(jié)果進(jìn)行排序時(shí),可以指定其排序方式,字段后使用ASC表達(dá)升序,DESC表達(dá)降序。三、簡(jiǎn)答題1、什么是SQL,請(qǐng)簡(jiǎn)要說(shuō)明它的組成和特點(diǎn)。參考答案:結(jié)構(gòu)化查詢(xún)語(yǔ)言,StructuredQueryLanguage,簡(jiǎn)稱(chēng)SQL,是關(guān)系數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)語(yǔ)言。SQL語(yǔ)言共分為四大類(lèi):數(shù)據(jù)定義語(yǔ)言,數(shù)據(jù)查詢(xún)語(yǔ)言,數(shù)據(jù)操縱語(yǔ)言,數(shù)據(jù)控制語(yǔ)言。它的特點(diǎn)涉及:非過(guò)程化語(yǔ)言,統(tǒng)一的語(yǔ)言,是所有關(guān)系數(shù)據(jù)庫(kù)的公共語(yǔ)言。2、索引的作用是什么?SQLServer有哪幾類(lèi)索引,各自的特點(diǎn)是什么?參考答案:索引(Index)提供了一種快速訪問(wèn)數(shù)據(jù)的途徑,索引是在基本表的列上建立的一種數(shù)據(jù)加對(duì)象,索引是為了加速查詢(xún)速度而創(chuàng)建的。實(shí)際的索引通常是這兩大類(lèi)5種方式的組合。(1)單列索引:對(duì)基本表的某一單獨(dú)的列進(jìn)行索引,是最簡(jiǎn)樸和最常用的索引類(lèi)型,通常情況下,應(yīng)對(duì)每個(gè)基本表的主關(guān)鍵字建立單列索引。(2)惟一索引:一旦在一個(gè)或多個(gè)列上建立了惟一索引,則不允許在表中相應(yīng)的列上插入任何相同的取值。使用惟一索引不僅能提高查詢(xún)性能,還可以維護(hù)數(shù)據(jù)的完整性。(3)復(fù)合索引:是針對(duì)基本表中兩個(gè)或兩個(gè)以上列建立的索引。(4)聚集索引:會(huì)改變基本表中記錄的物理存儲(chǔ)順序。即表中記錄的物理排序順序不再按插入的先后排列,而是根據(jù)索引列重新排序。(5)非聚集索引:表中記錄的物理順序與索引順序不同,表中的記錄仍按實(shí)際插入的先后順序排列,不按索引列排序。3、什么是基本表?什么是視圖?視圖有什么特點(diǎn)?在什么情況下需要?jiǎng)?chuàng)建視圖?參考答案:表是一個(gè)由行、列組成的二維結(jié)構(gòu),通常把行稱(chēng)做記錄,把列稱(chēng)為字段。視圖是由查詢(xún)數(shù)據(jù)庫(kù)表產(chǎn)生的,它其實(shí)是一個(gè)虛擬的表,它限制了用戶(hù)能看到和修改的數(shù)據(jù)。視圖的特點(diǎn)是在基本表或其他視圖上建立的表,它的結(jié)構(gòu)和內(nèi)容都來(lái)自某個(gè)基本表,是依據(jù)基本表存在而存在的。刪除一個(gè)視圖時(shí),不會(huì)對(duì)基本表產(chǎn)生任何影響,但當(dāng)刪除一張基本表時(shí),與之相關(guān)聯(lián)的視圖就會(huì)自動(dòng)被刪除。假如要限制用戶(hù)可以看到的數(shù)據(jù)庫(kù)中的信息,可以使用視圖。4、謂詞LIKE的作用是什么?參考答案:擬定給定的字符串是否與指定的模式匹配。模式可以包含常規(guī)字符和通配符字符。模式匹配過(guò)程中,常規(guī)字符必須與字符串中指定的字符完全匹配。5、假如創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)其SQL語(yǔ)句是什么?參考答案:CREATEDATABASE數(shù)據(jù)庫(kù)名稱(chēng)6、存儲(chǔ)過(guò)程的含義是什么?創(chuàng)建存儲(chǔ)過(guò)程的SQL語(yǔ)句是什么?參考答案:存儲(chǔ)過(guò)程(StoredProcedure)是一組預(yù)先編譯好的,以一種可執(zhí)行的形式永久地存儲(chǔ)在數(shù)據(jù)中的SQL代碼,在master數(shù)據(jù)庫(kù)中存儲(chǔ)了一些SQLServer事先定義好的系統(tǒng)存儲(chǔ)過(guò)程,通常以sp_xxxx做為存儲(chǔ)過(guò)程的名字。當(dāng)用戶(hù)創(chuàng)建數(shù)據(jù)庫(kù)時(shí),也會(huì)自動(dòng)生成一些事先定義好的存儲(chǔ)過(guò)程,通常以dt_xxxx做為名字。創(chuàng)建存儲(chǔ)過(guò)程的SQL語(yǔ)句是:(1)語(yǔ)句格式:CREATEPROC[EDURE]<存儲(chǔ)過(guò)程名>AS<SQL語(yǔ)句>(2)語(yǔ)句功能:創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,<SQL語(yǔ)句>多數(shù)是指運(yùn)用SQLServer的Transact-SQL編寫(xiě)的程序。7、什么是事務(wù)?舉例說(shuō)明事務(wù)解決的作用是什么?參考答案:事務(wù)(Transaction)是并發(fā)控制的基本單位,它反映了現(xiàn)實(shí)世界中需要以一個(gè)完整的單位提交的一項(xiàng)工作。SQLServer通過(guò)事務(wù)機(jī)制,將邏輯相關(guān)的一組操作捆綁在一起,以便服務(wù)器保持?jǐn)?shù)據(jù)的完整性。它是SQL復(fù)雜程序設(shè)計(jì)必不可少的內(nèi)容。事務(wù)需要用戶(hù)根據(jù)實(shí)際業(yè)務(wù)規(guī)則定義,有一定的難度,但其原理比較簡(jiǎn)樸。舉例說(shuō),假如我們正在使用UPDATE語(yǔ)句同時(shí)對(duì)學(xué)生表、成績(jī)表中的學(xué)號(hào)”20230001”改為”20230001”。這個(gè)任務(wù)需要兩條UPDATE語(yǔ)句組成,即:UPDATE學(xué)生表SET學(xué)號(hào)=’20230001’WHERE學(xué)號(hào)=’20230001’UPDATE成績(jī)表SET學(xué)號(hào)=’20230001’WHERE學(xué)號(hào)=’20230001’假如在執(zhí)行完第一個(gè)語(yǔ)句后,計(jì)算機(jī)忽然斷電,而第二條語(yǔ)句還沒(méi)來(lái)得急執(zhí)行,數(shù)據(jù)出現(xiàn)了不一致怎么辦?這時(shí)候就需要用到SQL的事務(wù)控制功能了。假如使用了SQLServer的事務(wù)控制機(jī)制,以上兩個(gè)問(wèn)題均可獲得很了的解決。在使用事務(wù)的情況下,SQLServer可以保證,要么所有的記錄要么所有解決,要么一行也不解決。假如修改了所有記錄的一半時(shí)服務(wù)器犯錯(cuò)了,SQLServer會(huì)返回到以前未執(zhí)行UPDATE操作前的位置,清除它已經(jīng)修改過(guò)的數(shù)據(jù),這就是事務(wù)解決的作用。8、SQLServer有哪些數(shù)據(jù)類(lèi)型,它們的重要用途是什么?參考答案:SQLServer提供了數(shù)值型、字符型、日期型、二進(jìn)制型、位型、雙字節(jié)型等6大類(lèi)數(shù)據(jù)類(lèi)型。數(shù)據(jù)類(lèi)型是數(shù)據(jù)的一種屬性,表達(dá)數(shù)據(jù)所表達(dá)信息的類(lèi)型。任何一種計(jì)算機(jī)語(yǔ)言都定義了自己的數(shù)據(jù)類(lèi)型。9、假設(shè)某教學(xué)管理數(shù)據(jù)庫(kù)有以下三張表,請(qǐng)寫(xiě)出下列問(wèn)題的SQL語(yǔ)句:學(xué)生(學(xué)號(hào),姓名,年齡,性別)課程(課程號(hào),課程名,任課教師)成績(jī)(學(xué)號(hào),課程號(hào),成績(jī))(1)如何在SQLServer上創(chuàng)建這三張表;參考答案:學(xué)生表:createtable學(xué)生表(學(xué)號(hào)char(8)primaryKey,姓名char(8),年齡int,性別bit)課程表:createtable課程表(課程號(hào)char(7)primaryKey,課程名char(20),任課教師char(8))成績(jī)表:creat(yī)etable成績(jī)表(學(xué)號(hào)char(8),課程號(hào)char(7),成績(jī)Numeric(4,2))(2)查詢(xún)劉峰教師所授課程號(hào),課程名;參考答案:Select課程號(hào),課程名from課程表where任課教師=’劉峰’(3)查詢(xún)年齡大于20歲的所有男同學(xué)的學(xué)號(hào)、姓名;參考答案:Select學(xué)號(hào),姓名from學(xué)生表where性別=1and年齡>20(4)查詢(xún)至少選修了兩門(mén)課程(含兩門(mén))的學(xué)生學(xué)號(hào);參考答案:select學(xué)號(hào)from成績(jī)groupby學(xué)號(hào)havingcount(學(xué)號(hào))>=2(5)查詢(xún)王文芳同學(xué)選修的所有課程的課程號(hào);參考答案:Select課程號(hào)from成績(jī)表,學(xué)生表Where學(xué)生表.姓名=’王文芳’and學(xué)生表.學(xué)號(hào)=成績(jī)表.學(xué)號(hào)(6)查詢(xún)王文芳同學(xué)不學(xué)的課程的課程號(hào);參考答案:select課程號(hào)from成績(jī)表where課程號(hào)notin(select課程號(hào)from學(xué)生表,成績(jī)表where學(xué)生表.姓名='王文芳'and學(xué)生表.學(xué)號(hào)=成績(jī)表.學(xué)號(hào))(7)查詢(xún)所有上劉峰老師課程的學(xué)生學(xué)號(hào);參考答案:Select學(xué)號(hào)from成績(jī)表,課程表,學(xué)生表Where課程表.任課教師='劉世峰'and課程表.課程號(hào)=成績(jī)表.課程號(hào)and課程表.學(xué)號(hào)=成績(jī)表.學(xué)號(hào)(8)查詢(xún)所有選修“數(shù)據(jù)庫(kù)原理”的學(xué)生的學(xué)號(hào);參考答案:Select學(xué)號(hào)from成績(jī)表,課程表where課程表.課程名='數(shù)據(jù)庫(kù)技術(shù)'and課程表.課程號(hào)=成績(jī)表.課程號(hào)(9)向?qū)W生表中插入一條記錄(’2023001’,’吳紅’,21,’女’);(1表達(dá)女,0表達(dá)男)參考答案:insertinto學(xué)生表values('2023001','吳紅','21',1)(10)刪除三張表中所有學(xué)號(hào)為20230231的學(xué)生信息;參考答案:Deletefrom學(xué)生表where學(xué)號(hào)=’>20230231’Deletefrom學(xué)生表where學(xué)號(hào)=’20230231’(11)把學(xué)號(hào)為20230002的學(xué)生的年齡改為22歲;參考答案:Updat(yī)e學(xué)生表set年齡=’22’where學(xué)號(hào)=’20230002’第三章思考與練習(xí)題一、選擇題1.設(shè)一個(gè)關(guān)系為R,假如它的每個(gè)屬性都是不可再分的,則稱(chēng)這個(gè)關(guān)系是符合(A)。A、第一范式B、第二范式C、第三范式D、BNC范式2.在第一個(gè)關(guān)系中出現(xiàn),在第二個(gè)關(guān)系中不出現(xiàn)的記錄組成的關(guān)系稱(chēng)為兩個(gè)關(guān)系的(C)。A、交B、并C、差D、笛卡兒積二、簡(jiǎn)答題1.設(shè)關(guān)系模式R有N個(gè)屬性,在模式R上也許成立的函數(shù)依賴(lài)有多少個(gè)?參考答案:函數(shù)依賴(lài)有N×(N-1)個(gè)2.設(shè)有關(guān)系模式R(職工號(hào),職工名,項(xiàng)目號(hào),項(xiàng)目名,工資),假設(shè)一個(gè)職工可參與多個(gè)項(xiàng)目,在每個(gè)項(xiàng)目中各領(lǐng)一份工資。那么請(qǐng)回答以下問(wèn)題:(1)請(qǐng)寫(xiě)出這個(gè)關(guān)系模式的函數(shù)依賴(lài)和主關(guān)鍵字;函數(shù)依賴(lài)涉及:職工號(hào)→職工名,項(xiàng)目號(hào)→項(xiàng)目名,(職工號(hào),項(xiàng)目號(hào))→工資主鍵為(職工號(hào),項(xiàng)目號(hào))(2)這個(gè)關(guān)系符合第幾范式,為什么?這個(gè)關(guān)系符合第一范式,由于它的每個(gè)屬性都不可再分。(3)請(qǐng)舉例說(shuō)明,這個(gè)關(guān)系存在哪些問(wèn)題;這個(gè)關(guān)系沒(méi)有達(dá)成第二范式,也許出現(xiàn)數(shù)據(jù)冗余和操作異常。例如,某個(gè)職工參與了多個(gè)項(xiàng)目的工作,他的職工號(hào)、職工名會(huì)反復(fù)多次存儲(chǔ)。同樣,假如一個(gè)項(xiàng)目有多名職工參與,項(xiàng)目號(hào)和項(xiàng)目名也會(huì)反復(fù)我次存儲(chǔ)。此外,假如現(xiàn)在增長(zhǎng)了一個(gè)新的項(xiàng)目,但暫時(shí)還沒(méi)有安排職工參與,那么由于主鍵是(職工號(hào),項(xiàng)目號(hào)),這個(gè)項(xiàng)目的信息也許無(wú)法插入。(4)請(qǐng)把這個(gè)關(guān)系模式分解成3NF,并說(shuō)明理由。修改后的各個(gè)關(guān)系如下:職工關(guān)系=(職工號(hào),職工名)項(xiàng)目關(guān)系=(項(xiàng)目號(hào),項(xiàng)目名)職工選擇項(xiàng)目關(guān)系=(職工號(hào),項(xiàng)目號(hào),工資)(注:此處的工資是指職工參與某個(gè)項(xiàng)目得到的勞動(dòng)報(bào)酬)3.關(guān)系完整性的重要內(nèi)容是什么?為什么要保證關(guān)系的完整性?參考答案:關(guān)系完整性就是關(guān)系模型中數(shù)據(jù)的對(duì)的性、一致性和有效性。關(guān)系完整性又涉及實(shí)體完整性、參照完整性和用戶(hù)定義的完整性三個(gè)方面。只有保證了關(guān)系的完整性,才干使數(shù)據(jù)庫(kù)中的數(shù)據(jù)對(duì)的、一致和有效。4.SQLServer中進(jìn)行關(guān)系完整性的重要方法是什么,請(qǐng)寫(xiě)出相應(yīng)的SQL語(yǔ)句。參考答案:1)SQLServer通過(guò)約束機(jī)制來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)完整性保護(hù)。重要涉及:PrimaryKey約束、ForeignKey約束、Default約束、Unique約束、Check約束等。PrimaryKey約束:學(xué)號(hào)char(8)NOTNULLPRIMARYKEY(學(xué)號(hào))ForeignKey約束:學(xué)號(hào)char(8)NOTNULLREFERENCES學(xué)生表(學(xué)號(hào))Default約束:成績(jī)numeric(9,2)DEFAULT0.00Unique約束:學(xué)號(hào)char(8)NOTNULLUNIOQUE(學(xué)號(hào))Check約束:年齡intCHECK(年齡)17and年齡<25)2)使用規(guī)則實(shí)行數(shù)據(jù)的完整性。創(chuàng)建規(guī)則的語(yǔ)法結(jié)構(gòu)如下:CREATERULE規(guī)則名AS條件表達(dá)式3)使用默認(rèn)實(shí)行數(shù)據(jù)完整性管理。創(chuàng)建默認(rèn)的語(yǔ)法如下:CREATEDEFAULT默認(rèn)名AS默認(rèn)值5.為什么要進(jìn)行規(guī)范化?規(guī)范化的相關(guān)理論是什么?請(qǐng)簡(jiǎn)要說(shuō)明。參考答案:為保證數(shù)據(jù)庫(kù)設(shè)計(jì)的對(duì)的性,在數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)階段,常使用關(guān)系規(guī)范化理論來(lái)指導(dǎo)關(guān)系型數(shù)據(jù)庫(kù)的設(shè)計(jì)。其基本思想是,每個(gè)關(guān)系都應(yīng)滿(mǎn)足一定的規(guī)范,才干使關(guān)系模式設(shè)計(jì)合理,達(dá)成減少冗余,提高查詢(xún)效率的目的。一個(gè)好的數(shù)據(jù)庫(kù)關(guān)系,應(yīng)當(dāng)沒(méi)有數(shù)據(jù)冗余、更新異常、插入異常、刪除異常問(wèn)題的存在,這就必須進(jìn)行規(guī)范化解決。規(guī)范化使用的理論是函數(shù)依賴(lài)。6.什么是一個(gè)“好”的關(guān)系模式,一個(gè)“不好”的關(guān)系模式有什么缺陷?參考答案:“好”的關(guān)系模式通常是指符合第三范式規(guī)定的關(guān)系,“不好”的關(guān)系模式會(huì)存在數(shù)據(jù)冗余、更新異常、插入異常、刪除異常等問(wèn)題。7.請(qǐng)寫(xiě)出一個(gè)符合第三范式的關(guān)系模式,并說(shuō)明理由。參考答案:學(xué)生=(學(xué)生號(hào),姓名,性別,專(zhuān)業(yè))課程=(學(xué)生號(hào),課程號(hào),成績(jī))選課=(課程號(hào),課程名,課程學(xué)分)第四章思考與練習(xí)題一、填空題1.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)一般涉及需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)、數(shù)據(jù)庫(kù)實(shí)行和運(yùn)營(yíng)維護(hù)等階段。2.?dāng)?shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的建設(shè)涉及結(jié)構(gòu)設(shè)計(jì)和行為設(shè)計(jì)兩個(gè)方面。3.數(shù)據(jù)庫(kù)設(shè)計(jì)的重要原則涉及表設(shè)計(jì)原則、字段設(shè)計(jì)原則和其他原則。4.E-R圖的設(shè)計(jì)關(guān)鍵在于對(duì)實(shí)體、聯(lián)系的選擇和表達(dá)。5.物理設(shè)計(jì)的重要內(nèi)容涉及存儲(chǔ)記錄的格式設(shè)計(jì)、存儲(chǔ)方法設(shè)計(jì)、訪問(wèn)方法設(shè)計(jì)以及完整性和安全性考慮。二、簡(jiǎn)答題1.請(qǐng)簡(jiǎn)要說(shuō)明數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)的環(huán)節(jié)。參考答案:數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)的環(huán)節(jié)涉及需求分析、概念設(shè)計(jì)、邏輯設(shè)計(jì)和物理設(shè)計(jì)。2.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)的目的是什么,請(qǐng)談?wù)勀愕睦斫?。參考答案:?shù)據(jù)庫(kù)設(shè)計(jì)指的是設(shè)計(jì)數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng)的技術(shù),是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,涉及硬件環(huán)境和操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)等軟件環(huán)境,如何使用這個(gè)環(huán)境來(lái)表達(dá)用戶(hù)的規(guī)定,構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及圍繞數(shù)據(jù)庫(kù)展開(kāi)的應(yīng)用系統(tǒng),使之可以有效地收集、存儲(chǔ)、操作和管理數(shù)據(jù),滿(mǎn)足公司組織中各類(lèi)用戶(hù)的應(yīng)用需求(信息需求和解決需求)。3.基本表設(shè)計(jì)的重要原則是什么,堅(jiān)持這些原則有什么好處?參考答案:基本表設(shè)計(jì)最重要的原則是關(guān)系規(guī)范化,盡也許達(dá)成第三范式。規(guī)范化有助于消除數(shù)據(jù)庫(kù)中的數(shù)據(jù)冗余,減少更新異常。規(guī)范化有好幾種形式,但第三范式通常被認(rèn)為在性能、擴(kuò)展性和數(shù)據(jù)完整性方面達(dá)成了最佳平衡。簡(jiǎn)樸來(lái)說(shuō),遵守第三范式標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)的表設(shè)計(jì)原則是:“OneFactinOnePlace”(一個(gè)事實(shí)相應(yīng)一個(gè)地方),即某個(gè)表只涉及其自身基本的屬性,當(dāng)不是它們自身所具有的屬性時(shí)需進(jìn)行分解。表之間的關(guān)系通過(guò)外鍵相連接。4.進(jìn)行SQLServer數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),一般有哪些命名規(guī)則?參考答案:一方面,命名的長(zhǎng)度應(yīng)盡量充足。假設(shè)某公司現(xiàn)有職工在一千人以?xún)?nèi),假如用數(shù)字表達(dá)職工號(hào)的話,職工號(hào)的長(zhǎng)度為3位即可,它最大可以表達(dá)999個(gè)職工。但是,假如考慮到公司未來(lái)的發(fā)展,那么職工號(hào)最佳設(shè)為4位,當(dāng)公司職工數(shù)目突破千人時(shí),主線無(wú)需重構(gòu)整個(gè)數(shù)據(jù)庫(kù)。另一方面,小心保存詞。要保證字段名沒(méi)有與SQL等保存詞或者常用訪問(wèn)方法名發(fā)生沖突。最后,慎用使用觸發(fā)器。觸發(fā)器在保證數(shù)據(jù)完整性方面發(fā)揮著積極作用,但它同時(shí)也會(huì)帶來(lái)效率方面的問(wèn)題,因此要慎用。觸發(fā)器的功能通??梢杂闷渌绞綄?shí)現(xiàn)。5.什么是數(shù)據(jù)流程圖,數(shù)據(jù)字典的重要作用是什么,談?wù)勀愕睦斫?。參考答?數(shù)據(jù)流圖(DataFlowDiagram,簡(jiǎn)記DFD),是在業(yè)務(wù)流程分析基礎(chǔ)上,描述實(shí)際數(shù)據(jù)流動(dòng)和加工過(guò)程的圖形表達(dá)法,它一般有4種符號(hào),即外部實(shí)體、數(shù)據(jù)流、加工和存儲(chǔ)。外部實(shí)體數(shù)據(jù)的來(lái)源和去向;數(shù)據(jù)流用帶箭頭的連線表達(dá),反映數(shù)據(jù)的流動(dòng)方向;加工用橢圓、圓或方框代表(本教材運(yùn)用圓形表達(dá)加工),表達(dá)對(duì)數(shù)據(jù)的加工解決動(dòng)作;存儲(chǔ)表達(dá)數(shù)據(jù)的存檔情況。數(shù)據(jù)字典(DataDictionary,簡(jiǎn)記DD),是對(duì)數(shù)據(jù)流程圖中數(shù)據(jù)流和存儲(chǔ)結(jié)構(gòu)的描述。在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)中,數(shù)據(jù)字典是表、視圖設(shè)計(jì)的重要依據(jù)。6.什么是E-R圖,它的作用是什么?參考答案:E-R圖是E-R(實(shí)體-關(guān)系)方法的重要組成部分。E-R方法是描述概念模型的有力工具。E-R圖方法是一種有效的信息抽象方法。在E-R圖中,用長(zhǎng)方形表達(dá)實(shí)體,用橢圓形表達(dá)屬性,用菱形表達(dá)聯(lián)系。在圖形內(nèi)標(biāo)記它們的名字,它們之間用無(wú)向線段相連,表達(dá)聯(lián)系的線段上標(biāo)明是哪種聯(lián)系。它的作用是采用E-R圖模型將現(xiàn)實(shí)世界的信息結(jié)構(gòu)統(tǒng)一用實(shí)體、屬性以及實(shí)體之間的聯(lián)系來(lái)描述。7.簡(jiǎn)要說(shuō)明需求分析階段的重要任務(wù)和目的。參考答案:需求分析階段的重要目的是回答“干什么”的問(wèn)題。需要從多方面對(duì)擬開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的企事業(yè)單位進(jìn)行調(diào)查,收集和分析各項(xiàng)應(yīng)用對(duì)信息和解決兩方面的需求。了解和掌握數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)對(duì)象(或稱(chēng)用戶(hù))的工作業(yè)務(wù)流程和每個(gè)崗位、每個(gè)環(huán)節(jié)的職責(zé),了解和掌握信息從開(kāi)始產(chǎn)生或建立,到最后輸出、存檔或消亡所通過(guò)的傳遞和轉(zhuǎn)換過(guò)程,了解和掌握各種人員在整個(gè)系統(tǒng)活動(dòng)過(guò)程中的作用;通過(guò)同用戶(hù)充足地交流和溝通,決定那些工作應(yīng)由計(jì)算機(jī)來(lái)做,哪些工作仍由手工來(lái)做,決定各種人員對(duì)信息和解決各有什么規(guī)定,對(duì)視屏操作界面和報(bào)表輸出格式各有什么規(guī)定,對(duì)數(shù)據(jù)(信息)的安全性(保密性)和完整性各有什么規(guī)定等等。需求分析階段的重要工作就是,通過(guò)調(diào)查從用戶(hù)處獲得對(duì)數(shù)據(jù)庫(kù)的下列需求。信息需求:用戶(hù)將從數(shù)據(jù)庫(kù)中獲得的信息的內(nèi)容和性質(zhì),有信息規(guī)定導(dǎo)出數(shù)據(jù)規(guī)定,即在數(shù)據(jù)庫(kù)中存儲(chǔ)哪些數(shù)據(jù)。解決需求:用戶(hù)要完畢什么解決功能,對(duì)某種解決的執(zhí)行頻度、用戶(hù)規(guī)定的響應(yīng)時(shí)間,以及解決的方式是聯(lián)機(jī)解決還是批解決等。安全性和完整性的約束第五章思考與練習(xí)題一、簡(jiǎn)答題1.請(qǐng)簡(jiǎn)要說(shuō)明數(shù)據(jù)庫(kù)安全機(jī)制?參考答案:一個(gè)用戶(hù)訪問(wèn)SQLServer必須要通過(guò)4個(gè)層次的安全控制,操作系統(tǒng)的安全性;服務(wù)器的安全性;數(shù)據(jù)庫(kù)的安全性;表和列的安全性。從上述流程可以看出,用戶(hù)使用SQLServer時(shí),需要通過(guò)兩個(gè)安全性階段:身份驗(yàn)證和權(quán)限認(rèn)證。身份驗(yàn)證階段系統(tǒng)只檢查用戶(hù)是否有連接SQLServer實(shí)例的權(quán)力,假如身份驗(yàn)證通過(guò)了,只表達(dá)用戶(hù)可以連接SQLServer實(shí)例,否則系統(tǒng)將拒絕用戶(hù)的連接。然后需要檢查用戶(hù)是否有訪問(wèn)服務(wù)器上數(shù)據(jù)庫(kù)的權(quán)限,為此需要授予每個(gè)數(shù)據(jù)庫(kù)中映射到用戶(hù)登錄的賬號(hào)訪問(wèn)權(quán)限,權(quán)限認(rèn)證就可以控制用戶(hù)在數(shù)據(jù)庫(kù)中進(jìn)行的操作。2.登錄賬號(hào)和用戶(hù)賬號(hào)的含義是什么?它們有什么區(qū)別聯(lián)系?參考答案:登錄賬號(hào)用于身份驗(yàn)證,使得用戶(hù)到達(dá)登錄到SQLServer服務(wù)器,屬于服務(wù)器層面,相稱(chēng)于大門(mén)的鑰匙;用戶(hù)賬號(hào)用于權(quán)限驗(yàn)證,屬于數(shù)據(jù)庫(kù)層面,相稱(chēng)于自己房間的鑰匙。用戶(hù)賬號(hào)在定義時(shí)便與一個(gè)登錄賬號(hào)相關(guān)聯(lián),即任何一個(gè)用戶(hù)賬號(hào)背后都有一個(gè)登錄賬號(hào)。3.請(qǐng)簡(jiǎn)要說(shuō)明使用公司管理創(chuàng)建登錄賬號(hào)和用戶(hù)賬號(hào)的過(guò)程。參考答案:(1)在SQLServer的公司管理器下,展開(kāi)“SQLServer組”文獻(xiàn)夾,找到需要建立登錄賬號(hào)的服務(wù)器并展開(kāi)其文獻(xiàn)夾,再展開(kāi)“安全性”文獻(xiàn)夾,在“登錄”選項(xiàng)上右擊鼠標(biāo),在出現(xiàn)的快捷菜單中單擊“新建登錄”菜單命令,打開(kāi)“SQLServer登錄屬性->新建登錄”對(duì)話框。(2)SQLServer支持“Windows身份驗(yàn)證”和單擊“SQLServer身份驗(yàn)證”兩種認(rèn)證模式。選擇“SQLServer身份驗(yàn)證”單選鈕,在“名稱(chēng)”文本框中輸入要?jiǎng)?chuàng)建的登錄賬號(hào)名稱(chēng),例如“mysa”,在“身份驗(yàn)證”選項(xiàng)組中,并輸入密碼。(3)設(shè)立完畢后,單擊“擬定”按鈕,即可完畢登錄賬號(hào)的創(chuàng)建。接下來(lái),開(kāi)始創(chuàng)建用戶(hù)賬號(hào),基本方法是:(1)在公司管理器中,展開(kāi)SQLServer組及其服務(wù)器,在“數(shù)據(jù)庫(kù)”文獻(xiàn)夾中,展開(kāi)某一數(shù)據(jù)庫(kù),例如“進(jìn)銷(xiāo)存”的文獻(xiàn)夾,然后在“用戶(hù)”選項(xiàng)上右擊,在彈出的快捷菜單中選擇“新建數(shù)據(jù)庫(kù)用戶(hù)”命令,打開(kāi)新建用戶(hù)對(duì)話框。(2)單擊“登錄名”下拉列表框右端的下拉箭頭,會(huì)看到剛剛創(chuàng)建的“mysa”登錄帳號(hào)。選擇“mysa”登錄賬號(hào),此時(shí)“用戶(hù)名”文本框中自動(dòng)顯示為“mysa”。可以更改“用戶(hù)名”文本框中的用戶(hù)名,也可以在“數(shù)據(jù)庫(kù)角色成員”列表框中選擇新建用戶(hù)應(yīng)當(dāng)屬于的數(shù)據(jù)庫(kù)角色。(3)設(shè)立完畢后,單擊“擬定”按鈕,即可在“進(jìn)銷(xiāo)存”數(shù)據(jù)庫(kù)中創(chuàng)建一個(gè)新的用戶(hù)賬號(hào)。假如不想創(chuàng)建用戶(hù)賬號(hào),單擊“取消”按鈕即可。4.如何對(duì)用戶(hù)賬號(hào)進(jìn)行授權(quán)管理,一般有哪些權(quán)限,請(qǐng)簡(jiǎn)要說(shuō)明。參考答案:(1)展開(kāi)服務(wù)器組,然后展開(kāi)服務(wù)器;展開(kāi)“數(shù)據(jù)庫(kù)”項(xiàng),然后找到相關(guān)的數(shù)據(jù)庫(kù),比如“進(jìn)銷(xiāo)存”;(2)展開(kāi)“進(jìn)銷(xiāo)存”數(shù)據(jù)庫(kù),根據(jù)對(duì)象類(lèi)型,單擊表、視圖、存儲(chǔ)過(guò)程等對(duì)象,找到需要進(jìn)行授權(quán)管理的數(shù)據(jù)庫(kù)對(duì)象,比如“物資臺(tái)賬”表。(3)右擊授予權(quán)限所在的對(duì)象,從彈出菜單中選擇“所有任務(wù)->管理權(quán)限”選項(xiàng);單擊“列出所有用戶(hù)/用戶(hù)定義的數(shù)據(jù)庫(kù)角色/public”選項(xiàng),然后選擇授予每位用戶(hù)的權(quán)限。其中,選中標(biāo)記表達(dá)授予權(quán)限。進(jìn)一步,通過(guò)本界面可完畢列級(jí)的授權(quán)管理。此外,也可以采用GRANT(授予權(quán)限)、DENY(拒絕權(quán)限)和REVOKE(撤消權(quán)限)等SQL語(yǔ)句完畢授權(quán)管理。5.為什么要進(jìn)行數(shù)據(jù)備份?數(shù)據(jù)庫(kù)備份涉及哪些重要內(nèi)容?參考答案:任何系統(tǒng)都不可避免會(huì)出現(xiàn)各種形式的故障,而某些故障也許會(huì)導(dǎo)致數(shù)據(jù)庫(kù)劫難性的損壞,所以做好數(shù)據(jù)庫(kù)的備份工作極為重要。備份可以創(chuàng)建在磁盤(pán)、磁帶等備份設(shè)備上,與備份相應(yīng)的是還原。數(shù)據(jù)庫(kù)備份就是在某種介質(zhì)上(磁帶、磁盤(pán)等)存儲(chǔ)數(shù)據(jù)庫(kù)(或者其中一部分)的拷貝的過(guò)程。更嚴(yán)格意義上講,備份應(yīng)當(dāng)是一種把數(shù)據(jù)從硬盤(pán)上復(fù)制到其他可移動(dòng)介質(zhì)上的操作過(guò)程。一個(gè)完整的備份通常要涉及三部分內(nèi)容,即系統(tǒng)數(shù)據(jù)庫(kù)、用戶(hù)數(shù)據(jù)庫(kù)和事務(wù)日記。6.什么是備份設(shè)備,請(qǐng)談一談SQLServer中創(chuàng)建備份設(shè)備的重要環(huán)節(jié)和方法。參考答案:備份設(shè)備是用來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)、事務(wù)日記或文獻(xiàn)和文獻(xiàn)組備份的存儲(chǔ)介質(zhì)。SQLServer支持3種備份設(shè)備,即磁盤(pán)設(shè)備、磁帶設(shè)備和命名管道設(shè)備。在SQLServer中,可以采用兩種方法創(chuàng)建備份設(shè)備,一是運(yùn)用公司管理器;二是使用系統(tǒng)存儲(chǔ)過(guò)程sp_addumpdevice。其環(huán)節(jié)如下:在公司管理器中展開(kāi)服務(wù)器組,展開(kāi)指定的服務(wù)器,展開(kāi)“管理”文獻(xiàn)夾,右擊“備份”,在彈出的快捷菜單中選擇“新建備份設(shè)備”選項(xiàng),打開(kāi)“備份設(shè)備屬性-新設(shè)備”對(duì)話框。在“名稱(chēng)”文本框中輸入邏輯設(shè)備的名稱(chēng),在下面選擇磁帶或者磁盤(pán)備份設(shè)備,并設(shè)立物理位置。當(dāng)使用磁盤(pán)時(shí),SQLServer允許將本地主機(jī)硬盤(pán)和遠(yuǎn)程主機(jī)上的硬盤(pán)作為備份設(shè)備,備份設(shè)備在硬盤(pán)中是以文獻(xiàn)的方式存儲(chǔ)的。完畢后,單擊“擬定”按鈕即可。缺省情況下,備份設(shè)備的全途徑為“C:\ProgramFiles\MicrosoftSQLServer\MSSQL\BACKUP\進(jìn)銷(xiāo)存數(shù)據(jù)庫(kù)備份.BAK”,備份設(shè)備文獻(xiàn)名為“進(jìn)銷(xiāo)存數(shù)據(jù)庫(kù)備份.BAK”,缺省途徑為SQLServer安裝目錄的BACKUP文獻(xiàn)夾。7.事務(wù)日記文獻(xiàn)有什么用途?是否也需要備份?為什么?參考答案:SQLServer數(shù)據(jù)庫(kù)是由兩個(gè)操作系統(tǒng)文獻(xiàn)組成的,即數(shù)據(jù)文獻(xiàn)和事務(wù)日記文獻(xiàn)。事務(wù)日記文獻(xiàn)重要用于存儲(chǔ)數(shù)據(jù)庫(kù)的更新情況等事務(wù)日記信息。事務(wù)日記文獻(xiàn)非常重要,所有對(duì)數(shù)據(jù)庫(kù)的更改操作都會(huì)記錄于此,當(dāng)數(shù)據(jù)庫(kù)損壞時(shí),數(shù)據(jù)庫(kù)管理員可使用事務(wù)日記恢復(fù)數(shù)據(jù)庫(kù)。從事務(wù)日記文獻(xiàn)的作用上可以看出,它是非常有用和重要的,因此也需要備份。8.請(qǐng)按以下操作練習(xí)一下數(shù)據(jù)庫(kù)備份操作,并體會(huì)一下數(shù)據(jù)庫(kù)備份的的效果。(1)創(chuàng)建一個(gè)數(shù)據(jù)庫(kù);(2)使用CREATETABLE語(yǔ)句在數(shù)據(jù)庫(kù)中創(chuàng)建一張表;(3)使用INSERT語(yǔ)句向表中插入若干條數(shù)據(jù);(4)進(jìn)入公司管理器,對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份操作;(5)使用DROPTABLE語(yǔ)句刪除已創(chuàng)建的表;(6)使用公司管理器,對(duì)數(shù)據(jù)庫(kù)進(jìn)行還原操作。參考答案:CREATEDATABASE學(xué)生庫(kù)學(xué)生表:createtable學(xué)生(學(xué)號(hào)char(8)primaryKey,姓名char(8),年齡int,性別bit)insertinto學(xué)生values('2023001','王麗','19',1)insertinto學(xué)生values('2023002','張華','20',0)insertinto學(xué)生values('2023003','李敏','19',1)DROPTABLE學(xué)生第六章思考與練習(xí)題一、簡(jiǎn)答題1.什么是嵌入式SQL,它有哪些特點(diǎn)和用途?參考答案:嵌入式SQL語(yǔ)言是將SQL語(yǔ)句直接嵌入到程序的源代碼中,與其他程序設(shè)計(jì)語(yǔ)言語(yǔ)句混合。嵌入式SQL的用途:它是數(shù)據(jù)庫(kù)應(yīng)用程序的一種開(kāi)發(fā)方法。是一種應(yīng)用程序進(jìn)行數(shù)據(jù)庫(kù)訪問(wèn)時(shí)所采用的編程式數(shù)據(jù)庫(kù)語(yǔ)言。嵌入式SQL的特點(diǎn)是,數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS一般會(huì)采用預(yù)編譯的解決辦法,即由DBMS的預(yù)解決程序?qū)υ闯绦蜻M(jìn)行掃描,辨認(rèn)出SQL語(yǔ)句,把它們轉(zhuǎn)換成宿主語(yǔ)言調(diào)用語(yǔ)句,以使宿主語(yǔ)言編譯程序可以辨認(rèn)它,最后再由宿主語(yǔ)言的編譯程序?qū)⒄麄€(gè)源程序編譯成目的碼。嵌入SQL語(yǔ)句完畢的功能也可以通過(guò)應(yīng)用程序接口(API)實(shí)現(xiàn)。2.請(qǐng)簡(jiǎn)述C/S和B/S的重要原理,并說(shuō)明它們各自的優(yōu)缺陷。參考答案:C/S模式就是基于公司內(nèi)部網(wǎng)絡(luò)的應(yīng)用系統(tǒng)。傳統(tǒng)的C/S模式是一種兩層結(jié)構(gòu)的系統(tǒng),第一層是在客戶(hù)機(jī)系統(tǒng)上結(jié)合了表達(dá)與業(yè)務(wù)邏輯;第二層是通過(guò)網(wǎng)絡(luò)結(jié)合了數(shù)據(jù)庫(kù)服務(wù)器。優(yōu)點(diǎn)是:C/S模式的應(yīng)用系統(tǒng)最大的好處是不依賴(lài)公司外網(wǎng)環(huán)境,即無(wú)論公司是否可以上網(wǎng),都不影響應(yīng)用。缺陷是應(yīng)用程序的維護(hù)、移植和互操作變得復(fù)雜。B/S模式,即瀏覽器/服務(wù)器模式,是一種從傳統(tǒng)的二層C/S模式發(fā)展起來(lái)的新的網(wǎng)絡(luò)結(jié)構(gòu)模式,其本質(zhì)是三層結(jié)構(gòu)C/S模式。B/S網(wǎng)絡(luò)結(jié)構(gòu)模式是基于Intranet的需求而出現(xiàn)并發(fā)展的。在B/S模式中,客戶(hù)端運(yùn)營(yíng)瀏覽器軟件。優(yōu)點(diǎn)是:B/S占有優(yōu)勢(shì)的是其異地瀏覽和信息采集的靈活性。任何時(shí)間、任何地點(diǎn)、任何系統(tǒng),只要可以使用瀏覽器上網(wǎng),就可以使用B/S系統(tǒng)的終端。缺陷是:采用B/S結(jié)構(gòu),客戶(hù)端只能完畢瀏覽、查詢(xún)、數(shù)據(jù)輸入等簡(jiǎn)樸功能,絕大部分工作由服務(wù)器承擔(dān),這使得服務(wù)器的承擔(dān)很重。3.請(qǐng)簡(jiǎn)要說(shuō)明運(yùn)用VB開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的一般環(huán)節(jié)。參考答案:運(yùn)用VB開(kāi)發(fā)數(shù)據(jù)類(lèi)應(yīng)用程序的基本框架如下:1)通常要聲明一個(gè)全局?jǐn)?shù)據(jù)庫(kù)連接對(duì)象2)一般要?jiǎng)?chuàng)建Main子過(guò)程,并將它設(shè)立為啟動(dòng)對(duì)象。在其中順序完畢以下操作:(1)以非模態(tài)方式顯示飛濺窗。(2)創(chuàng)建全局?jǐn)?shù)據(jù)庫(kù)連接對(duì)象,并連接SQLServer或Access等數(shù)據(jù)庫(kù)。(3)以模態(tài)方式顯示登錄窗,等待用戶(hù)登錄。(4)登錄成功后,以非模態(tài)方式顯示主窗體,否則退出程序。3)主窗體一般均提供增長(zhǎng)、刪除、修改、查詢(xún)等對(duì)數(shù)據(jù)庫(kù)的管理功能,所有操作均使用全局?jǐn)?shù)據(jù)庫(kù)連接對(duì)象作為與數(shù)據(jù)庫(kù)交互的通道,通過(guò)SQL語(yǔ)句對(duì)數(shù)據(jù)進(jìn)行解決,其中涉及增長(zhǎng)功能、刪除功能、修改功能和查詢(xún)功能。4)其他功能。比如數(shù)據(jù)庫(kù)備份和恢復(fù)功能、用戶(hù)權(quán)限管理功能等。4.什么是數(shù)據(jù)庫(kù)引擎?VB數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)訪問(wèn)數(shù)據(jù)庫(kù)的重要機(jī)理是什么?參考答案:VB提供了三種數(shù)據(jù)庫(kù)訪問(wèn)引擎,即Jet引擎、ODBC和OLEDB,目前重要使用OLEDB。在VB應(yīng)用程序中重要用這個(gè)對(duì)象建立與數(shù)據(jù)庫(kù)的連接,一般的方法是:①聲明并創(chuàng)建對(duì)象DimADOcnAsNewConnection②建立數(shù)據(jù)庫(kù)連接ADOcn.Open連接字符串假如要連接SQLServer數(shù)據(jù)庫(kù),那么連接字符串一般應(yīng)具有以下組成:Provider=SQLOLEDB;Server=<服務(wù)器名>;UserID=<登錄賬號(hào)>;Password=<登錄口令>;Database=<數(shù)據(jù)庫(kù)名>③對(duì)數(shù)據(jù)表進(jìn)行更新操作5.ADO對(duì)象模型的重要對(duì)象是什么?假如連接后臺(tái)數(shù)據(jù)庫(kù)?參考答案:ADO對(duì)象模型的重要對(duì)象是:Connection、Command、Recordset、Parameter、Property、Field和Error。①聲明并創(chuàng)建對(duì)象DimADOcnAsNewConnection②建立數(shù)據(jù)庫(kù)連接ADOcn.Open連接字符串假如要連接SQLServer數(shù)據(jù)庫(kù),那么連接字符串一般應(yīng)具有以下組成:Provider=SQLOLEDB;Server=<服務(wù)器名>;UserID=<登錄賬號(hào)>;Password=<登錄口令>;Database=<數(shù)據(jù)庫(kù)名>6.請(qǐng)寫(xiě)出VB中編寫(xiě)增、刪、改、查功能的重要環(huán)節(jié)和語(yǔ)句。參考答案:ADOcn.ExecuteSQL語(yǔ)句字符串要增長(zhǎng)學(xué)生成績(jī)表中學(xué)號(hào)為20230008的記錄,可以采用以下語(yǔ)句實(shí)現(xiàn):ADOcn.Execute“insertinto學(xué)生成績(jī)表(學(xué)號(hào),課程號(hào),成績(jī))Value(‘20230008’,’101’,’85’)”要?jiǎng)h除學(xué)生成績(jī)表中學(xué)號(hào)為001的記錄,可以采用以下語(yǔ)句實(shí)現(xiàn):ADOcn.Execute“DELETEFROM學(xué)生成績(jī)表WHERE學(xué)號(hào)=‘001’”要修改學(xué)號(hào)為20230008學(xué)生課程號(hào)為101的成績(jī)?yōu)椋?。ADOcn.Execute“UPDATE學(xué)生成績(jī)表SET成績(jī)=’89’WHERE學(xué)號(hào)=‘20230008’AND課程號(hào)=’101’”要查找所有的學(xué)生的成績(jī)ADOcn.Execute“SELECT*FROM學(xué)生成績(jī)表”一、單項(xiàng)選擇題(每個(gè)題只有一個(gè)答案是對(duì)的的。)1.假如希望從學(xué)生表中查詢(xún)出所有姓“李”的同學(xué),那么條件語(yǔ)句應(yīng)當(dāng)是(B)。A、Where姓名%‘李’B、Where姓名LIKE‘李%’C、Where姓名%‘LIKE李’D、Where姓名LIKE‘李’2.在一個(gè)教師關(guān)系中,可以成為主關(guān)鍵字(或稱(chēng)主碼)的屬性是(B)。A、教師姓名B、教師編號(hào)C、教師年齡D、教師性別3.從最終用戶(hù)應(yīng)用程序的視角看,數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)是(C)。A、模式、外模式和內(nèi)模式B、內(nèi)模式、外模式和模式C、外模式、模式和內(nèi)模式D、外模式、內(nèi)模式和模式4.在一個(gè)學(xué)生關(guān)系中,可以成為主關(guān)鍵字(或稱(chēng)主碼)的屬性是(C)。A、性別B、年齡C、學(xué)號(hào)D、班級(jí)5.有嚴(yán)格的數(shù)學(xué)基礎(chǔ)的數(shù)據(jù)模型是(A)。A、關(guān)系模型B、網(wǎng)狀模型C、層次模型D、面向?qū)ο竽P?.下列關(guān)于索引的說(shuō)明不對(duì)的的是(A)。A、索引必須創(chuàng)建在主關(guān)鍵字之上B、索引與基本表分開(kāi)存儲(chǔ)C、索引是為了提高查詢(xún)速度而創(chuàng)建的D、索引會(huì)在一定限度上影響增刪改操作的效率7.設(shè)關(guān)系R是滿(mǎn)足第一范式的,若R中不存在非主屬性對(duì)主鍵的部分函數(shù)依賴(lài),則R符合(A)。A、第二范式B、第三范式C、BNC范式D、第四范式8.下列符合第三范式的關(guān)系是(D)。A、學(xué)生(學(xué)號(hào),姓名,課程號(hào),課程名)B、學(xué)生(學(xué)號(hào),姓名,課程名,成績(jī))C、學(xué)生(學(xué)號(hào),姓名,課程號(hào),成績(jī))D、學(xué)生(學(xué)號(hào),姓名,性別)9.在第一個(gè)關(guān)系中出現(xiàn),而在第二個(gè)關(guān)系中不出現(xiàn)的記錄組成的新關(guān)系稱(chēng)為(D)。A、兩個(gè)關(guān)系的積B、兩個(gè)關(guān)系的并C、兩個(gè)關(guān)系的交D、兩個(gè)關(guān)系的差10.數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)中,需求分析階段的重要目的是(A)。A、回答“干什么”的問(wèn)題B、回答“怎么干”的問(wèn)題C、建立邏輯數(shù)據(jù)模型D、建立最佳物理存儲(chǔ)結(jié)構(gòu)11.用戶(hù)使用SQLServer時(shí),通常需要依次通過(guò)兩個(gè)安全性階段(C)。A、登錄驗(yàn)證、操作驗(yàn)證B、操作驗(yàn)證、登錄驗(yàn)證C、身份驗(yàn)證、權(quán)限認(rèn)證D、權(quán)限認(rèn)證、身份驗(yàn)證12.SQLServer數(shù)據(jù)庫(kù)中的一個(gè)完整的備份通常要涉及(A)。A、系統(tǒng)數(shù)據(jù)庫(kù)、用戶(hù)數(shù)據(jù)庫(kù)和事務(wù)日記B、系統(tǒng)數(shù)據(jù)庫(kù)、系統(tǒng)表和數(shù)據(jù)字典C、系統(tǒng)數(shù)據(jù)庫(kù)、用戶(hù)數(shù)據(jù)庫(kù)和數(shù)據(jù)字典D、用戶(hù)數(shù)據(jù)庫(kù)和事務(wù)日記13.下列哪些不屬于索引的類(lèi)型(D)。A、單列索引B、惟一索引C、聚集索引D、事務(wù)日記索引14.下列SQL語(yǔ)句中,可以完畢并運(yùn)算的是(A)。A、SELECT*FROM籃球愛(ài)好者UNIONSELECT*FROM足球愛(ài)好者B、SELECT*FROM籃球愛(ài)好者INTERSECTSELECT*FROM足球愛(ài)好者C、SELECT*FROM籃球愛(ài)好者EXCEPTSELECT*FROM足球愛(ài)好者D、SELECT*FROM籃球愛(ài)好者,足球愛(ài)好者15.設(shè)學(xué)生表和課程表的結(jié)構(gòu)分別為(學(xué)號(hào),姓名)和(學(xué)號(hào),課程號(hào),成績(jī)),假如希望查詢(xún)出“成績(jī)大于90分的學(xué)生姓名”,則相應(yīng)的SQL語(yǔ)句是(D)。A、SELECT姓名FROM學(xué)生表WHERE學(xué)生表.學(xué)號(hào)=課程表.學(xué)號(hào)AND課程表.成績(jī)>90B、SELECT姓名FROM課程表WHERE學(xué)生表.學(xué)號(hào)=課程表.學(xué)號(hào)AND課程表.成績(jī)>90C、SELECT姓名FROM學(xué)生表,課程表WHERE學(xué)生表.學(xué)號(hào)=課程表.學(xué)號(hào)OR課程表.成績(jī)>90D、SELECT姓名FROM學(xué)生表,課程表WHERE學(xué)生表.學(xué)號(hào)=課程表.學(xué)號(hào)AND課程表.成績(jī)>90二、填空題1.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)是指數(shù)據(jù)庫(kù)系統(tǒng)由外模式、模式和內(nèi)模式三級(jí)抽象模式構(gòu)成。2.備份是指將數(shù)據(jù)從硬盤(pán)復(fù)制到可移動(dòng)媒體上的過(guò)程。3.“實(shí)體一聯(lián)系”方法是描述數(shù)據(jù)庫(kù)概念模型的重要方法,一般稱(chēng)這種方法為E-R方法(或E-R圖方法)。4.用戶(hù)使用SQLServer數(shù)據(jù)庫(kù)時(shí),一般需要通過(guò)兩個(gè)安全性階段:身份驗(yàn)證和權(quán)限認(rèn)證。5.E-R圖設(shè)計(jì)一般在數(shù)據(jù)庫(kù)設(shè)計(jì)的概念設(shè)計(jì)階段使用。三、判斷題(對(duì)的的在括號(hào)內(nèi)打上“√”,錯(cuò)誤的打上“╳”。)1.可以惟一表達(dá)數(shù)據(jù)表中的每條記錄的字段或者字段的組合稱(chēng)為主碼或主鍵(√)。2.SQLServer數(shù)據(jù)庫(kù)中的NULL值(空值)表達(dá)的是“空格”或“0”值(╳)3.一個(gè)不規(guī)范的關(guān)系模式通常會(huì)引發(fā)插入異常、刪除異常和更新異常,導(dǎo)致大量的數(shù)據(jù)冗余。(√)4.根據(jù)索引的特點(diǎn),應(yīng)當(dāng)對(duì)那些數(shù)據(jù)量大、查詢(xún)頻度較高、實(shí)時(shí)性規(guī)定強(qiáng)的基本表創(chuàng)建索引,(√)5.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),有效存儲(chǔ)數(shù)據(jù),滿(mǎn)足用戶(hù)信息規(guī)定和解決規(guī)定。(√)6.參照完整性規(guī)則通常是指在兩個(gè)參照和被參照關(guān)系中,參照關(guān)系中每條記錄的外鍵或者為空,或者等于被參照關(guān)系中某條記錄的主鍵。(√)四、簡(jiǎn)述題1.請(qǐng)簡(jiǎn)要說(shuō)明視圖的概念和作用參考答案:視圖是在基本表或其他視圖上建立的表,它的結(jié)構(gòu)和內(nèi)容都來(lái)自某個(gè)基本表,是依據(jù)基本表存在而存在的。刪除一個(gè)視圖時(shí),不會(huì)對(duì)基本表產(chǎn)生任何影響,但當(dāng)刪除一張基本表時(shí),與之相關(guān)聯(lián)的視圖就會(huì)自動(dòng)被刪除。其作用重要是:(1)視圖是通過(guò)預(yù)編譯的SELECT語(yǔ)句,存儲(chǔ)在數(shù)據(jù)庫(kù)服務(wù)器端,因此執(zhí)行視圖比從客戶(hù)端直接執(zhí)行SELECT語(yǔ)句速度更快、效率更高一些。(2)視圖屬于用戶(hù)模式范疇,在實(shí)際中,一般的用戶(hù)不一定具有SELECT語(yǔ)句方面的專(zhuān)門(mén)知識(shí),從用戶(hù)和諧性角度來(lái)說(shuō),視圖更便于用戶(hù)使用。(3)運(yùn)用視圖可以簡(jiǎn)化的形式表達(dá)復(fù)雜的SELECT語(yǔ)句組,如嵌套查詢(xún)等。2.什么是函數(shù)依賴(lài)與函數(shù)決定,請(qǐng)舉例說(shuō)明參考答案:設(shè)一個(gè)關(guān)系為R,X和Y是它的兩個(gè)屬性集。若對(duì)于X上的每個(gè)值都有Y上的一個(gè)惟一值與之相應(yīng),則稱(chēng)X和Y具有函數(shù)依賴(lài)關(guān)系,并稱(chēng)X函數(shù)決定Y,或稱(chēng)Y函數(shù)依賴(lài)于X,稱(chēng)X為決定因素。假設(shè)一個(gè)職工關(guān)系為(職工號(hào),姓名,性別,年齡,職務(wù)),職工號(hào)用來(lái)標(biāo)記每個(gè)職工,選作該關(guān)系的主鍵。我們可以從以下兩方面理解函數(shù)依賴(lài)的概念:一方面,對(duì)于該關(guān)系中每個(gè)職工的職工號(hào),都相應(yīng)著姓名屬性中的惟一值,即該職工的姓名,或者說(shuō)一個(gè)職工的姓名由其職工號(hào)惟一擬定,所以稱(chēng)職工號(hào)函數(shù)決定姓名,或稱(chēng)姓名函數(shù)依賴(lài)于職工號(hào)。另一方面,除職工號(hào)外,其他屬性都不能成為決定因素形成函數(shù)依賴(lài),由于對(duì)于它們的每個(gè)屬性值,都也許相應(yīng)另一屬性的多個(gè)不同的取值,比如對(duì)于性別屬性的一個(gè)取值“男”就會(huì)相應(yīng)多個(gè)而不是一個(gè)職工號(hào)。3.請(qǐng)簡(jiǎn)要說(shuō)明存儲(chǔ)過(guò)程的概念和優(yōu)點(diǎn)。參考答案:存儲(chǔ)過(guò)程(StoredProcedure)是一組預(yù)先編譯好的,以一種可執(zhí)行的形式永久地存儲(chǔ)在數(shù)據(jù)中的SQL代碼。使用存儲(chǔ)過(guò)程的好處可歸納為以下幾點(diǎn):(a)執(zhí)行速度快。在通過(guò)第一次調(diào)用以后,就駐留在內(nèi)存中,不必再通過(guò)編譯和優(yōu)化;(b)模塊化的程序設(shè)計(jì)。通過(guò)了一次創(chuàng)建以后,可以被調(diào)用無(wú)數(shù)次;(c)減少網(wǎng)絡(luò)流量;(d)保證系統(tǒng)的安全性。五、綜合應(yīng)用題1.設(shè)有有以下基本表:(1)供應(yīng)商表(供應(yīng)商編號(hào),供應(yīng)商名稱(chēng),供應(yīng)商所在城市);(2)零件表(零件編號(hào),零件名稱(chēng),零件顏色,零件重量);(3)工程項(xiàng)目表(工程編號(hào),工程名稱(chēng),工程所在城市);(4)工程供貨表(工程編號(hào),供應(yīng)商編號(hào),零件編號(hào),零件數(shù)量)。用SQL語(yǔ)言寫(xiě)出下列查詢(xún)語(yǔ)句,(1)查詢(xún)所有工程的所有細(xì)節(jié):SELECT*FROM工程項(xiàng)目表(2)查詢(xún)所在城市為上海的所有工程的所有細(xì)節(jié)SELECT*FROM工程項(xiàng)目表WHERE工程所在城市=’上?!?3)查詢(xún)重量最輕的零件代號(hào)SELECT零件編號(hào)FROM零件表WHERE零件重量=(SELECTMIN(零件重量)FROM零件表)(4)查詢(xún)?yōu)楣こ叹幪?hào)為“JG2023001”的工程提供零件的供應(yīng)商編號(hào)SELECT供應(yīng)商編號(hào)FROM工程供貨表WHERE工程編號(hào)=’JG2023001’(5)查詢(xún)?yōu)楣こ叹幪?hào)為“JG2023001”的工程提供零件編號(hào)為“P1”的供應(yīng)商編號(hào)SELECT供應(yīng)商編號(hào)FROM工程供貨表WHERE工程編號(hào)=’JG2023001’AND零件編號(hào)=’P1’(6)查詢(xún)由供應(yīng)商編號(hào)為S1的供應(yīng)商提供零件的工程名稱(chēng)SELECT工程項(xiàng)目表.工程名稱(chēng)FROM工程項(xiàng)目表,工程供貨表WHERE工程項(xiàng)目表.工程編號(hào)=工程供貨表.工程編號(hào)AND工程供貨表.供應(yīng)商編號(hào)=’S1’(7)查詢(xún)供應(yīng)商S1提供的零件的顏色SELECTDISTINCT零件表.零件顏色FROM零件表,工程供貨表WHERE零件表.零件編號(hào)=工程供貨表.零件編號(hào)AND工程供貨表.供應(yīng)商編號(hào)=’S1’(8)查詢(xún)?yōu)樗诔鞘袨樯虾5墓こ烫峁┝慵墓?yīng)商編號(hào)SELECTDISTINCT工程供貨表.供應(yīng)商編號(hào)FROM工程項(xiàng)目表,工程供貨表WHERE工程供貨表.工程編號(hào)=工程項(xiàng)目表.工程編號(hào)AND工程項(xiàng)目表.工程所在城市=’上?!玻茫樱眩陶Z(yǔ)句創(chuàng)建簡(jiǎn)樸數(shù)據(jù)表設(shè)有兩個(gè)關(guān)系(1)教師關(guān)系T,涉及教師編號(hào)TNo,姓名TN,系別TD,職稱(chēng)RANK;(2)課程關(guān)系C,涉及課程號(hào)CNo,課程名CN。教師編號(hào)和課程號(hào)分別是上述兩個(gè)關(guān)系的主鍵,請(qǐng)用SQL語(yǔ)句創(chuàng)建教師數(shù)據(jù)表T。參考答案:CREATETABLET{TNoINTPRIMARYKEY,TNCHAR(30),TDCHAR(20),RANKCHAR(20)};3.用SQL語(yǔ)句創(chuàng)建數(shù)據(jù)表在上題基礎(chǔ)上,假設(shè)還存在教師專(zhuān)家課程關(guān)系TC,涉及教師編號(hào)TNo和課程號(hào)CNo。注意:說(shuō)明主鍵碼和外鍵碼約束參考答案:CREATETABLETC{TNoINT,CNoINT,PRIMARYKEY(Tno,Cno),FOREIGNKEY(TNo)REFERENCEST(TNo),FOREIGNKEY(CNo)REFERENCESC(CNo)};4.運(yùn)用SQL語(yǔ)句進(jìn)行查詢(xún)?cè)谏项}的基礎(chǔ)上,假如要查詢(xún)“張紅老師承擔(dān)的所有課程”,請(qǐng)寫(xiě)出相應(yīng)的SQL查詢(xún)語(yǔ)句。參考答案:SELECTC.CNo,C.CNFROMT,C,TCWHERET.TNo=TC.TNoANDC.CN=TC.CNoANDT.TN=’張紅’5.程序應(yīng)用題設(shè)學(xué)生成績(jī)表的結(jié)構(gòu)為(學(xué)號(hào)、課程號(hào)、成績(jī)),程序運(yùn)營(yíng)界面如圖1所示。進(jìn)入界面后,用戶(hù)一方面選擇學(xué)號(hào)(Combo1)、課程號(hào)(Combo2),姓名(Text1)和課程名(Text2)從數(shù)據(jù)庫(kù)中自動(dòng)讀入;然后,用戶(hù)輸入相應(yīng)的成績(jī)(Text3),點(diǎn)擊“確認(rèn)”按鈕后,將結(jié)果插入到學(xué)生成績(jī)表中。請(qǐng)補(bǔ)充完畢下列程序代碼。圖1“增長(zhǎng)記錄”窗體運(yùn)營(yíng)界面PrivateSubCommand1_Click()‘聲明一個(gè)記錄集對(duì)象DimADOrsAsNewRecordset‘將記錄集對(duì)象與已建立的數(shù)據(jù)庫(kù)聯(lián)接對(duì)象ADOcn綁定ADOrs.ActiveConnection=ADOcn‘第一步:在學(xué)生成績(jī)表中查詢(xún)是否存在關(guān)鍵字相同的記錄(1)拼寫(xiě)查詢(xún)字符串strSQL=“”(2)執(zhí)行查詢(xún)語(yǔ)句strSQL‘第二步:假如關(guān)鍵字反復(fù),則退出程序IfNotThenMsgBox“記錄已存在,不能繼續(xù)增長(zhǎng)”ExitSubEndIf‘第三步:將結(jié)果插入到學(xué)生成績(jī)表中StrSQL=”InsertInto學(xué)生成績(jī)表(學(xué)號(hào),課程號(hào),成績(jī))Values(‘”+Combo1.Text+”‘,’“+Combo2.Text+”‘,“+Str(Val(Text3.Text))+”)”StrSQLEndSub參考答案及評(píng)分要點(diǎn):‘第一步:在學(xué)生成績(jī)表中查詢(xún)是否存在關(guān)鍵字相同的記錄strSQL=”Select*From學(xué)生成績(jī)表Where學(xué)號(hào)=’”+combo1.Text+”‘And課程號(hào)=’“+Combo2.Text+”‘“ADOrs.OpenStrSQL‘第二步:假如關(guān)鍵字反復(fù),則退出程序IfNotADOrs.EOFThenMsgBox“記錄已存在,不能繼續(xù)增長(zhǎng)”ExitSubEndIf‘第三步:將結(jié)果插入到學(xué)生成績(jī)表中StrSQL=”InsertInto學(xué)生成績(jī)表(學(xué)號(hào),課程號(hào),成績(jī))Values(‘”+Combo1.Text+”‘,’“+Combo2.Text+”‘,“+Str(Val(Text3.Text))+”)”ADOcn.ExecuteStrSQLEndSub第一章:1、訂單管理系統(tǒng)的功能有哪些?答:訂單管理系統(tǒng)的功能重要有客戶(hù)查詢(xún)商品信息、客戶(hù)預(yù)訂商品并提交訂單、銷(xiāo)售人員解決客戶(hù)的訂單信息、銷(xiāo)售人員管理商品信息、客戶(hù)信息等。2、說(shuō)明ER模型的作用?答:ER模型(實(shí)體關(guān)系模型)是描述概念世界,建立概念世界的工具,ER方法把管理系統(tǒng)所要描述的問(wèn)題劃分為單個(gè)的實(shí)體,通過(guò)實(shí)體間的聯(lián)系實(shí)現(xiàn)有效、自然地模擬現(xiàn)實(shí)世界。3、什么是關(guān)系模型?關(guān)系的完整性涉及哪些內(nèi)容?答:關(guān)系模型就是用二維表格結(jié)構(gòu)來(lái)表達(dá)實(shí)體及實(shí)體之間聯(lián)系的模型,關(guān)系模型涉及四類(lèi)完整性:域完整性、實(shí)體完整性、參照完整性和用戶(hù)定義的完整性。4、按照功能,SQL語(yǔ)言分為哪4部分?答:按照功能,SQL語(yǔ)言分為數(shù)據(jù)定義語(yǔ)言、查詢(xún)語(yǔ)言、數(shù)據(jù)操縱語(yǔ)言、數(shù)據(jù)控制語(yǔ)言。5、規(guī)范化范式是依據(jù)什么來(lái)劃分的?它與一事一地的原則有什么聯(lián)系?答:規(guī)范化范式根據(jù)一個(gè)關(guān)系滿(mǎn)足數(shù)據(jù)依賴(lài)的限度不同,可規(guī)范化為第一范式(1NF)、第二范式(2NF)、第三范式(3NF)。規(guī)范化范式遵循一事一地的原則,將描述一個(gè)獨(dú)立事物的屬性組成一個(gè)關(guān)系。第二章:1、SQLServer2023有哪些新增特性?答:SQLServer2023的新特性重要體現(xiàn)在公司數(shù)據(jù)管理、開(kāi)發(fā)人員生產(chǎn)力、商務(wù)智能三個(gè)方面。公司數(shù)據(jù)管理體現(xiàn)在高可用性、管理工具、安全性和可伸縮性;開(kāi)發(fā)人員生產(chǎn)力體現(xiàn)在CommonLanguageRuntime集成、集成XML、Transact-SQL增強(qiáng)和SQL服務(wù)代理;商務(wù)智能體現(xiàn)在分析服務(wù)、數(shù)據(jù)轉(zhuǎn)換服務(wù)、報(bào)表服務(wù)和數(shù)據(jù)挖掘。2、SQLServer2023安裝的軟件和硬件環(huán)境是什么?答:SQLServer2023安裝的軟件和硬件環(huán)境參見(jiàn)教材表2-3、2-4、2-5、2-6。3、SQLServer2023有哪些版本?有哪些服務(wù)組件?答:SQLServer2023涉及公司版、標(biāo)準(zhǔn)版、工作組版、開(kāi)發(fā)版和簡(jiǎn)易版五個(gè)版本,服務(wù)組件重要有SQLServer數(shù)據(jù)庫(kù)引擎、AnalysisServices、ReportingServices、NotificationServices、IntegrationServices等。4、什么是實(shí)例?經(jīng)常提到的SQLServer2023服務(wù)器和服務(wù)器實(shí)例是否具有相同的含義?答:實(shí)例就是SQL服務(wù)器引擎,每個(gè)SQLServer數(shù)據(jù)庫(kù)引擎實(shí)例各有一套不為其他實(shí)例共享的系統(tǒng)及用戶(hù)數(shù)據(jù)庫(kù)。一個(gè)SQLServer服務(wù)器就是一個(gè)實(shí)例,一臺(tái)計(jì)算機(jī)上,可以安裝多個(gè)SQLSERVER,每個(gè)SQLSERVER就可以理解為是一個(gè)實(shí)例。5、默認(rèn)實(shí)例和命名實(shí)例有何差別?在安裝和使用上有何不同?答:實(shí)例又分為“默認(rèn)實(shí)例”和“命名實(shí)例”,假如在一臺(tái)計(jì)算機(jī)上安裝第一個(gè)SQLSERVER2023命名設(shè)立保持默認(rèn)的話,那這個(gè)實(shí)例就是默認(rèn)實(shí)例。一臺(tái)計(jì)算機(jī)上最多只有一個(gè)默認(rèn)實(shí)例,也可以沒(méi)有默認(rèn)實(shí)例,默認(rèn)實(shí)例名與計(jì)算機(jī)名相同。除默認(rèn)實(shí)例外,所有數(shù)據(jù)庫(kù)引擎實(shí)例都由安裝該實(shí)例的過(guò)程中指定的實(shí)例名標(biāo)記。6、SQLServer2023的安全性驗(yàn)證分為哪兩個(gè)階段?答:第1個(gè)階段是身份驗(yàn)證,驗(yàn)證用戶(hù)是否具有“連接權(quán)”;第2個(gè)階段是數(shù)據(jù)庫(kù)的訪問(wèn)權(quán),驗(yàn)證連接到服務(wù)器實(shí)例的用戶(hù),即已登錄到服務(wù)器實(shí)例的用戶(hù),是否具有“訪問(wèn)權(quán)”。7、SQLServer2023有哪些重要的實(shí)用工具?每個(gè)工具都有什么用途?答:SQLServerManagementStudio,是MicrosoftSQLServer2023中的新組件,這是一個(gè)用于訪問(wèn)、配置、管理和開(kāi)發(fā)SQLServer的所有組件的集成環(huán)境,是SQLServer2023中最重要的管理工具。SQLServerConfigurationManager,用來(lái)管理SQLServer2023所提供的服務(wù)、服務(wù)器與客戶(hù)端通信協(xié)議以及客戶(hù)端的基本配置管理。SQLServer外圍應(yīng)用配置器用來(lái)啟用、禁用、開(kāi)始或停止SQLServer2023的功能、服務(wù)和遠(yuǎn)程連接。Notificat(yī)ionServices命令提醒是用來(lái)開(kāi)發(fā)及部署應(yīng)用程序以產(chǎn)生和傳送告知的平臺(tái)。ReportingServices配置用于配置和管理SQLServer2023的報(bào)表服務(wù)器。SQLServer錯(cuò)誤和使用情況報(bào)告。SQLServerProfiler也稱(chēng)為SQLServer事件探查器,用于監(jiān)視SQLServer數(shù)據(jù)庫(kù)引擎和AnalysisServices的實(shí)例,并捕獲數(shù)據(jù)庫(kù)服務(wù)器在運(yùn)營(yíng)過(guò)程中發(fā)生的事件,將事件數(shù)據(jù)保存在文獻(xiàn)或表中供用戶(hù)分析。第三章:1、在SQLServer2023中數(shù)據(jù)庫(kù)文獻(xiàn)有哪3類(lèi)?各有什么作用?答:SQLServer2023中數(shù)據(jù)庫(kù)文獻(xiàn)有主數(shù)據(jù)文獻(xiàn)、輔助數(shù)據(jù)文獻(xiàn)、事務(wù)日記文獻(xiàn)。主數(shù)據(jù)文獻(xiàn)是數(shù)據(jù)庫(kù)的起點(diǎn),指向數(shù)據(jù)庫(kù)中文獻(xiàn)的其他部分,同時(shí)也用來(lái)存放用戶(hù)數(shù)據(jù);輔助數(shù)據(jù)文獻(xiàn)專(zhuān)門(mén)用來(lái)存放數(shù)據(jù);事務(wù)日記文獻(xiàn)存放恢復(fù)數(shù)據(jù)庫(kù)所需的所有信息。2、SQLServer2023中數(shù)據(jù)文獻(xiàn)是如何存儲(chǔ)的?答:SQLServer2023中采用以頁(yè)為數(shù)據(jù)庫(kù)存儲(chǔ)的基本單位,數(shù)據(jù)文獻(xiàn)的頁(yè)按順序編號(hào),文獻(xiàn)首頁(yè)的頁(yè)碼是0。每個(gè)文獻(xiàn)都有一個(gè)文獻(xiàn)ID號(hào)。在數(shù)據(jù)庫(kù)中惟一標(biāo)記一頁(yè),需要同時(shí)使用文獻(xiàn)ID和頁(yè)碼。在每個(gè)文獻(xiàn)中,第一頁(yè)是包含文獻(xiàn)特性信息的文獻(xiàn)首頁(yè),在文獻(xiàn)開(kāi)始處的其他幾個(gè)頁(yè)中包含系統(tǒng)信息,如分派映射表。系統(tǒng)頁(yè)存儲(chǔ)在主數(shù)據(jù)文獻(xiàn)和第一個(gè)事務(wù)日記文獻(xiàn)中,其中有一個(gè)系統(tǒng)頁(yè)包含數(shù)據(jù)庫(kù)屬性信息,它是數(shù)據(jù)庫(kù)的引導(dǎo)頁(yè)。3、SQLServer2023中創(chuàng)建、查看、打開(kāi)、刪除數(shù)據(jù)庫(kù)的方法有哪些?答:方法分別有兩種,即可以通過(guò)SQLServerManagementStudio圖形化界面實(shí)現(xiàn),也可以通過(guò)SQL語(yǔ)句命令實(shí)現(xiàn)。5、通過(guò)SQL語(yǔ)句,使用__CREATE_DATABASE_命令創(chuàng)建數(shù)據(jù)庫(kù),使用_EXECsp_helpdb_命令查看數(shù)據(jù)庫(kù)定義信息,使用_EXECsp_dboption命令設(shè)立數(shù)據(jù)庫(kù)選項(xiàng),使用_ALTERDATABASE_命令修改數(shù)據(jù)庫(kù)結(jié)構(gòu),使用_DROPDATABASE_命令刪除數(shù)據(jù)庫(kù)。7、安裝SQLServer2023時(shí),系統(tǒng)自動(dòng)提供的4個(gè)系統(tǒng)數(shù)據(jù)庫(kù)分別是什么?各起什么作用?答:系統(tǒng)自動(dòng)提供的4個(gè)系統(tǒng)數(shù)據(jù)庫(kù)分別是master數(shù)據(jù)庫(kù)、model數(shù)據(jù)庫(kù)、msdb數(shù)據(jù)庫(kù)、tempdb數(shù)據(jù)庫(kù)。作用參見(jiàn)教材3.2節(jié)。第四章:1、如何理解表中記錄和實(shí)體的相應(yīng)關(guān)系?為什么說(shuō)關(guān)系也是實(shí)體?在表中如何表達(dá)?答:實(shí)體是客觀存在并且可以互相區(qū)別的事物,實(shí)體可以是具體的事物,也可以是抽象的事物。不同的事物是用不同的特性決定的,用來(lái)描述實(shí)體的特性稱(chēng)為實(shí)體的屬性。表中每條記錄相應(yīng)一個(gè)實(shí)體,而每個(gè)字段保存著相應(yīng)實(shí)體的屬性值。2、說(shuō)明主鍵、惟一鍵和外鍵的作用。說(shuō)明它們?cè)诒WC數(shù)據(jù)完整性中的應(yīng)用方法。答:主鍵是唯一辨認(rèn)一個(gè)表的每一記錄,作用是將記錄和存放在其他表中的數(shù)據(jù)進(jìn)行關(guān)聯(lián),并與外鍵構(gòu)成參照完整性約束。惟一鍵用于指明創(chuàng)建惟一約束的列上的取值必須惟一。外鍵用于建立和加強(qiáng)兩個(gè)表數(shù)據(jù)之間的鏈接的一列或多列。通過(guò)將保存表中主鍵值的一列或多列添加到另一個(gè)表中,可創(chuàng)建兩個(gè)表之間的鏈接。這個(gè)列就成為第二個(gè)表的外鍵。外鍵約束的重要目的是控制存儲(chǔ)在外鍵表中的數(shù)據(jù),但它還可以控制對(duì)主鍵表中數(shù)據(jù)的修改。3、參照完整性規(guī)定有關(guān)聯(lián)的兩個(gè)或兩個(gè)以上表之間數(shù)據(jù)的_一致性_。參照完整性可以通過(guò)建立_主鍵_和_外鍵_來(lái)實(shí)現(xiàn)。4、創(chuàng)建表用__CREATETABLE_(tái)_語(yǔ)句,向表中添加記錄用_INSERTINTO_語(yǔ)句,查看表的定義信息用EXECUTEsp_h(yuǎn)elp語(yǔ)句,修改表用ALTERTABLE語(yǔ)句,刪除表用DROPTABLE語(yǔ)句。7、SQLServer2023中有哪些類(lèi)型數(shù)據(jù)?答:參見(jiàn)教材表4-1。9、數(shù)據(jù)完整性涉及哪些?如何實(shí)現(xiàn)?答:數(shù)據(jù)完整性涉及實(shí)體完整性,域完整性,引用完整性,用戶(hù)定義完整性,通過(guò)在表中,列中,表與表之間設(shè)立主鍵、惟一鍵、外鍵、CHECK約束等可以實(shí)現(xiàn)。16、說(shuō)明使用標(biāo)記列的優(yōu)缺陷。答:優(yōu)點(diǎn):方便可以讓計(jì)算機(jī)為表中的記錄按照規(guī)定自動(dòng)地生成標(biāo)記字段的值。缺陷:標(biāo)記列值的形成是按照用戶(hù)擬定的初值和增量進(jìn)行的,假如在經(jīng)常進(jìn)行刪除操作的表中定義了標(biāo)記列,那么在標(biāo)記值之間就會(huì)產(chǎn)生不連續(xù)現(xiàn)象。假如規(guī)定不能出現(xiàn)這種不連續(xù)的值,那么就不能使用標(biāo)記列屬性。第六章:1、為什么說(shuō)視圖是虛表?視圖的數(shù)據(jù)存在什么地方?答:視圖是虛表,它在存儲(chǔ)時(shí)只存儲(chǔ)視圖的HYPERLINK"javascript:;"\t"_self"定義,而沒(méi)有存儲(chǔ)相應(yīng)的數(shù)據(jù)。視圖通過(guò)定義從基表中搜集數(shù)據(jù),并展現(xiàn)給用戶(hù)。數(shù)據(jù)存儲(chǔ)在相應(yīng)的數(shù)據(jù)表中。2、創(chuàng)建視圖用CREATEVIEW語(yǔ)句,修改視圖用ALTERVIEW語(yǔ)句,刪除視圖用DROPVIEW語(yǔ)句。查看視圖中的數(shù)據(jù)用SELECT語(yǔ)句。查看視圖的基本信息用sp_helptext存儲(chǔ)過(guò)程,查看視圖的定義信息用EXECsp_helptext存儲(chǔ)過(guò)程,查看視圖的依賴(lài)關(guān)系用EXECsp_depends存儲(chǔ)過(guò)程。4、說(shuō)明視圖的優(yōu)缺陷。答:優(yōu)點(diǎn):(1)視圖能簡(jiǎn)化用戶(hù)的操作;(2)視圖機(jī)制可以使用戶(hù)以不同的方式查詢(xún)同一數(shù)據(jù);(3)視圖對(duì)數(shù)據(jù)庫(kù)重構(gòu)提供了一定限度的邏輯獨(dú)立性;(4)視圖可以對(duì)機(jī)密的數(shù)據(jù)提供安全保護(hù)。缺陷:(1)減少性能,通過(guò)視圖查詢(xún)起來(lái)需要花費(fèi)時(shí)間;(2)視圖是只讀的,更新時(shí)需要更新原表,對(duì)用戶(hù)來(lái)說(shuō)很麻煩。8、通過(guò)視圖修改數(shù)據(jù)要注意哪些限制?答:對(duì)視圖進(jìn)行的修改操作有以下限制:(1)若視圖的字段來(lái)自表達(dá)式或常量,則不允許對(duì)該視圖執(zhí)行INSERT和UPDATE操作,但允許執(zhí)行DELETE操作。(2)若視圖的字段來(lái)自集合函數(shù),則此視圖不允許修改操作。(3)若視圖定義中具有GROUPBY子句,則此視圖不允許修改操作。(4)若視圖定義中具有DISTINCT短語(yǔ),則此視圖不允許修改操作。(5)一個(gè)不允許修改操作視圖上定義的視圖,也不允許修改操作。9、SQLServer2023提供了哪兩種數(shù)據(jù)訪問(wèn)的方法?答:兩種方法分別為:表掃描法和索引法10、創(chuàng)建索引的好處重要有哪些?答:創(chuàng)建索引好處重要是加快數(shù)據(jù)查詢(xún)和加快表的連接、排序和分組工作。11、按照索引值的特點(diǎn)分類(lèi),可將索引分為_(kāi)_惟一__索引和_非惟一_索引;按照索引結(jié)構(gòu)的特點(diǎn)分類(lèi),可將索引分為_(kāi)聚集__索引和__非聚集__索引。12、聚集索引與非聚集索引之間有哪些不同點(diǎn)?答:聚集索引會(huì)對(duì)表進(jìn)行物理排序,而非聚集索引不會(huì)對(duì)表進(jìn)行物理排序。14、在哪些情況下SQLServer2023會(huì)自動(dòng)建立索引?這些索引能否用DROPINDEX語(yǔ)句來(lái)刪除?假如不能,應(yīng)當(dāng)用什么方法來(lái)刪除?答:在創(chuàng)建或修改表時(shí),假如添加了一個(gè)主鍵或惟一鍵約束,則系統(tǒng)將自動(dòng)在該表上,以該鍵值作為索引列,創(chuàng)建一個(gè)惟一索引。對(duì)于通過(guò)主鍵和唯一約束創(chuàng)建的索引是不可以通過(guò)DROPINDEX來(lái)刪除的。刪除方法是通過(guò)刪除主鍵約束(或唯一約束)來(lái)自動(dòng)刪除由該主鍵約束(或唯一約束)創(chuàng)建出來(lái)的索引。第七章:1、什么是批解決?批解決的結(jié)束標(biāo)志是什么?答:批解決就是一個(gè)或多個(gè)Transact-SQL語(yǔ)句的集合,用GO語(yǔ)句作為一個(gè)批解決的結(jié)束。2、一些SQL語(yǔ)句不可以放在一個(gè)批解決中進(jìn)行解決,它們需要遵守什么規(guī)則?答:一些SQL語(yǔ)句不可以放在一個(gè)批解決中進(jìn)行解決,它們需要遵守以下規(guī)則:(1)大多數(shù)CREATE命令要在單個(gè)批命令中執(zhí)行,但CREATEDATABASE、CREATETABLE和CREATEINDEX例外。(2)調(diào)用存儲(chǔ)過(guò)程時(shí),假如它不是批解決中的第一個(gè)語(yǔ)句,則在其前面必須加上EXECUTE,或簡(jiǎn)寫(xiě)為EXEC。(3)不能把規(guī)則和默認(rèn)值綁定到表的字段或用戶(hù)定義數(shù)據(jù)類(lèi)型上之后,在同一個(gè)批解決中使用它們。(4)不能在給表字段定義了一個(gè)CHECK約束后,在同一個(gè)批解決中使用該約束。(5)不能在修改表的字段名后,在同一個(gè)批解決中引用該新字段名。3、常量和變量有哪些種類(lèi)?答:常量有字符串常量、數(shù)值常量、日期常量

溫馨提示

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

評(píng)論

0/150

提交評(píng)論