




已閱讀5頁,還剩3頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章習題參考答案1.思考題(1)什么是數據庫、數據庫管理系統、數據庫系統?它們之間有什么聯系?答:數據庫是存貯在計算機內的有結構的數據集合;數據庫管理系統是一個軟件,用以維護數據庫、接受并完成用戶對數據庫的一切操作;數據庫系統指由硬件設備、軟件系統、專業領域的數據體和管理人員構成的一個運行系統。(2)當前,主要有哪幾種新型數據庫系統?它們各有什么特點?用于什么領域,試舉例說明?答:主要有:分布式數據庫、面向對象數據庫、多媒體數據庫、數據倉庫技術、空間數據庫。(3)什么是數據模型?目前數據庫主要有哪幾種數據模型?它們各有什么特點?答:數據模型是一組描述數據庫的概念。這些概念精確地描述數據、數據之間的關系、數據的語義和完整性約束。很多數據模型還包括一個操作集合。這些操作用來說明對數據庫的存取和更新。數據模型應滿足3方面要求:一是能真實地模擬現實世界;二是容易為人們理解;三是便于在計算機上實現。目前在數據庫領域,常用的數據模型有:層次模型、網絡模型、關系模型以及最近興起的面向對象的模型。(4)關系數據庫中選擇、投影、連接運算的含義是什么?答:1)選擇運算:從關系中篩選出滿足給定條件的元組(記錄)。選擇是從行的角度進行運算,選擇出的記錄是原關系的子集。2)投影運算:從關系中指定若干個屬性(字段)組成新的關系。投影是從列的角度進行運算,得到的新關系中的字段個數往往比原關系少。3)連接運算:將兩個關系按照給定的條件橫向拼接成新的關系。連接過程是通過兩個關系中公有的字段名進行的。(5)關鍵字段的含義是什么?它的作用是什么?答:一個關系中可以確定一個字段為關鍵字段,該字段的值在各條記錄中不能有相同的值。(如:門牌號碼);關鍵字段的作用主要是為建立多個表的關聯和進行快速查詢。(6)什么是E-R圖?E-R圖是由哪幾種基本要素組成?這些要素如何表示?答:E-R圖也稱實體-聯系圖(EntityRelationshipDiagram),提供了表示實體類型、屬性和聯系的方法,用來描述現實世界的概念模型。構成E-R圖的基本要素有3種,即實體、屬性和聯系。其表示方法為:用矩形框表示現實世界中的實體,用菱形框表示實體間的聯系,用橢圓形框表示實體和聯系的屬性,實體名、屬性名和聯系名分別寫在相應框內。ABAAC ABCAA第2章習題解答1.思考題(1)在SQLServer2008中的數據庫中包含哪些對象?其中什么對象是必不可少的?其作用又是什么?答:SQLServer2008中的數據庫對象主要包括數據庫關系圖、表、視圖、同義詞、可編程性、ServiceBroker、存儲和安全性等。其中表對象是必不可少的。表是由行和列構成的集合,用來存儲數據。(2)SQLServer提供的系統數據庫master它的作用是什么?用戶可以刪除和修改嗎?為什么?答:master數據庫記錄SQLServer系統的所有系統級信息。主要包括實例范圍的元數據、端點、鏈接服務器和系統配置設置以及記錄了所有其他數據庫的存在、數據庫文件的位置以及SQLServer的初始化信息。用戶不可以刪除和修改,它是由系統創建和維護的數據庫。(3)什么文件是數據庫文件?組成數據庫的文件有哪些類型?如何識別?它們的作用是什么?答:存放數據庫數據和數據庫對象的文件叫數據庫文件;在SQLServer2008系統中組成數據庫的文件有2種類型:數據文件和事務(事務就是一個單元的工作,該單元的工作要么全部完成,要么全部不完成)日志文件。而數據文件又由主數據文件和次數據文件組成。1)主數據文件。一個數據庫可以有一個或多個數據文件,當有多個數據文件時,有一個文件被定義為主數據文件,它用來存儲數據庫的啟動信息和部分或全部數據,一個數據庫只能有一個主數據文件,主數據文件名稱的默認后綴是.mdf。2)次數據文件。次數據文件用來存儲主數據文件中沒存儲的其他數據。使用次數據文件來存儲數據的優點在于,可以在不同物理磁盤上創建次數據文件,并將數據存儲在這些文件中,這樣可以提高數據處理的效率。一個數據庫可以有零個或多個次數據文件,次數據文件名稱的默認后綴是.ndf。3)事務日志文件。事務日志記錄了每一個事務的開始、對數據的改變和取消修改等信息。如使用INSERT、UPDATE、DELETE等對數據庫進行操作都會記錄在此文件中,而SELECT等對數據庫內容不會有影響的操作則不會記錄在案。一個數據庫可以有一個或多個事務日志文件,事務日志文件名稱的默認后綴是.ldf。SQLServer2008中數據庫文件名有2個:邏輯文件名和物理文件名。邏輯文件名是指當在T-SQL命令語句中存取某一個文件時必須使用該數據庫文件的邏輯文件名,各個數據庫的邏輯文件名不能相同。物理文件名是指數據庫文件實際存儲在磁盤上的文件名稱。數據庫的邏輯文件名是在Transact-SQL語言中引用的用于存取某一數據庫文件的標識。物理文件名則是在操作系統環境或用戶程序中引用的數據庫文件標識。(4)分離數據庫和附加數據庫的區別是什么?分離數據庫是不是將其從磁盤上真正刪除了?為什么?答:數據庫的分離就是將用戶的數據庫從SQLServer中刪除,即從SQLServer服務器中分離出來,但是保持組成該數據的數據文件和事務日志文件中的數據完好無損,即數據庫文件仍保留在磁盤上。在實際工作中,分離數據庫作為對數據庫的一種備份來使用。附加數據庫的工作是分離數據庫的逆操作,通過附加數據庫,可以將沒有加入SQLServer服務器的數據庫文件添加到服務器中。還可以很方便地在SQLServer服務器之間利用分離后的數據文件和事務日志文件組成新的數據庫。(5)數據庫的收縮是不是指數據庫的壓縮?為什么?收縮數據庫能起什么作用?答:收縮數據庫就是把數據庫不需要或者沒有用的東西進行資源回收,簡單的說就是數據庫壓縮。CBCDB BCACD第3章習題解答1思考題(1)數據通常存儲在什么對象中?表對象存儲在什么文件中?什么用戶可以對表對象進行操作?答:數據通常存儲在表對象中,表對象存儲在數據庫文件是,任何有相應權限的用戶都可以對之進行操作。在SQLServer2008中數據表的創建可以以圖形界面方式完成,也可以使用T-SQL語言的方式完成。(2)什么是數據的完整性?數據完整性包括哪些內容?為什么要使用數據的完整性?答:數據的完整性是指數據庫中數據的正確性、有效性和一致性。(1)正確性:指數據的合法性,如數值型數據只能包含數字,不能包含字母。(2)有效性:指數據是否處在定義域的有效范圍之內。(3)一致性:指同一事實的兩個數據應該一致,不一致即是不相容的。通俗地講就是限制數據庫中的數據表可輸入的數據,防止數據庫中存在不符合語義規定的數據和因錯誤信息的輸入輸出造成的無效操作或錯誤信息。使用數據完整性可確保數據庫中的數據質量。(3)假定利用CREATETABLE命令建立下面的BOOK表:CREATETABLEBOOK(總編號char(6),分類號char(6),書名char(6),單價numeric(10,2)則“單價”列的數據類型是什么?列寬度是多少?是否有小數位?答:“單價”列的數據類型是數值型,列寬度是10,有小數位2位。(4)在SQLServer中刪除數據表和刪除表數據是一個問題嗎?為什么?若要刪除表的定義及其數據,應使用什么語句?答:在SQLServer中刪除數據表和刪除表數據不是一個問題。刪除數據表是指將整個表文件在數據庫中刪除,刪除表數據則是對數據表的某些數據內容進行刪除。若要刪除表的定義及其數據,應使用語句:DROPTABLE語句(5)什么是實體完整性?實體完整性可通過什么措施實現?主鍵約束和唯一性約束有什么區別?答:實體完整性是指一個關系中所有主屬性不能取空值。所謂“空值”,就是“不知道”或“無意義”的值。實體完整性可以通過標識列、主鍵約束、唯一性約束以及建立唯一性索引等措施來實現。主鍵約束:指定表的一列或幾列的組合能唯一地標識一行記錄。唯一性約束:指定一個或多個列的組合的值具有唯一性,以防止在列中輸入重復的數據。DCABC ABAAB第4章習題解答1思考題(1)在SQL的查詢語句SELECT中,使用什么選項實現投影運算?什么選項實現連接運算?什么選項實現選擇運算?答:在SQL的查詢語句中,select選項實現(投影)運算,from選項實現(連接)運算,where選項實現(選擇)運算。(2)一個子SELECT的結果作為查詢的條件,即在一個SELECT語句的WHERE子句中出現另一個SELECT語句,這種查詢稱為什么查詢?其功能是什么?答:稱為嵌套查詢。嵌套查詢是T-SQL語言的高級查詢,它可以用多個簡單的基本查詢構成復雜的查詢,從而增強其查詢功能。(3)在SELECT語句中,定義一個區間范圍的特殊運算符是什么?檢查一個屬性值是否屬于一組值中的特殊運算符又是什么?答:在SELECT語句中,定義一個區間范圍的特殊運算符是BETWEEN,檢查一個屬性值是否屬于一組值的特殊運算符是IN。(4)在T-SQL語句中,與表達式“工資BETWEEN2000AND5000”功能相同的表達式如何寫?答:工資=2000AND工資(SELECTavg(成績)FROM成績表)”的功能是什么?答:查詢成績表中所有成績大于平均成績的記錄BDCBD CDACD第5章習題解答1思考題(1)什么是聚集索引?什么是非聚集索引?它們的區別是什么?答:聚集索引(Clustered)將數據行的鍵值在數據表內排序并存儲對應的數據記錄,使得數據表的物理順序與索引順序一致。非聚集索引(Non-clustered)具有完全獨立于數據行的結構。數據存儲在一個地方,索引存儲在另一個地方。聚集索引確定表中數據的物理順序。非聚集索引中索引的邏輯順序與磁盤上行的物理存儲順序不同。(2)一個表中的數據可以按照多種順序來存儲嗎?一個表中能創建幾個聚集索引?聚集索引一定是唯一索引嗎?為什么?答:一個表中的數據只能按照一種順序來存儲,所以一個表中只能創建一個聚集索引。唯一索引是給所做的索引增加了唯一性的約束,添加,修改索引列中數據時,不允許出現重復值。聚集索引是唯一的,也可以不是唯一的,就看如何定義。(3)視圖和數據表的區別是什么?視圖可以創建索引、創建主健、約束嗎?為什么?答:視圖和數據表的區別:1)視圖是已經編譯好的sql語句。而表不是。2)視圖沒有實際的物理記錄。而表有。3)表是內容,視圖是窗口。4)表只用物理空間而視圖不占用物理空間,視圖只是邏輯概念的存在,表可以及時對它進行修改,但視圖只能有創建的語句來修改。5)表是內模式,視圖是外模式。6)視圖是查看數據表的一種方法,可以查詢數據表中某些字段構成的數據,只是一些SQL語句的集合。從安全的角度說,視圖可以不給用戶接觸數據表,從而不知道表結構。7)表屬于全局模式中的表,是實表;視圖屬于局部模式的表,是虛表。8)視圖的建立和刪除只影響視圖本身,不影響對應的基本表。(4)能不能基于臨時表建立視圖?由什么語句可建立臨時表?在CREATEVIEW語句中能不能使用INTO關鍵字?為什么?答:不能基于臨時表建立視圖。由SELECTINTO語句可建立臨時表,在CREATEVIEW語句中不能使用INTO關鍵字。(5)視圖存儲記錄嗎?對更新視圖的操作最終都轉化為對什么的更新操作?答:視圖的信息存放在系統表中,可以使用查詢語句或系統存儲過程進行查詢。由于視圖實際上并不存儲記錄,因此更新視圖的操作最終都轉化為對基表的更新操作。ACCAA BCCAA第6章習題解答1思考題(1)什么是存儲過程?為什么要使用存儲過程?答:存儲過程是SQLServer服務器中一組(預編譯)的T-SQL語句的集合,是存儲在數據庫中的程序,這些程序是用來完成對數據庫的指定操作。存儲過程具有如下優點:1)存儲過程只在創造時進行編譯,以后每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高數據庫執行速度。2)當對數據庫進行復雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復雜操作用存儲過程封裝起來與數據庫提供的事務處理結合一起使用。這些操作,如果用程序來完成,就變成了一條條的SQL語句,可能要多次連接數據庫。而使用存儲過程,只需要連接一次數據庫就可以了。3)存儲過程可以重復使用,可減少數據庫開發人員的工作量。4)安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權。(2)系統存儲過程和自定義存儲過程有何區別?答:最簡單的區別就是系統存儲過程是系統自帶的,用戶不可更改刪除;而自定義的存儲過程是用戶自己編輯的。在自定義存儲過程中可以調用系統存儲過程。(3)當某個表被刪除后,該表上的所有觸發器是否還存在?為什么?答:因為觸發器(trigger)是SQLServer數據庫中一種特殊類型的存儲過程,不能由用戶直接調用,而且可以包含復雜的T-SQL語句。觸發器是為表上的更新、插入、刪除操作定義的,也就是說當表上發生更新、插入或刪除操作時觸發器將執行。所以,當某個表被刪除后,該表上的所有觸發器將自動被刪除。觸發器主要用于強制復雜的業務規則或要求。(4)存儲過程和觸發器有什么區別?什么時候用存儲過程?什么時候用觸發器?答:存儲過程和觸發器,它們都是獨立的數據庫對象和存儲在數據庫上的特殊的程序。存儲過程由用戶調用,完成指定的數據處理任務;觸發器則由特定的操作觸發,從而自動完成相關的處理任務。使用觸發器可以實現更強的數據完整性方面的約束。(5)要求創建一個存儲過程myproc,查詢指定班級中選修指定課程的學生人數,并將查詢結果通過參數返回。以下過程調用存儲過程查詢“材料科學0601”班中選修“C+程序設計基礎”的學生人數:CREATEPROCEDUREmyprocclassnameVARCHAR(20),cnameVARCHAR(20),countINTOUTPUTASSELECTCOUNT(*)FROMS_C_Infosc,st_infos,c_infocWHEREc.c_no=sc.c_noANDs.st_id=sc.st_idANDs.Cl_Name=classnameANDc.C_Name=cname執行這個存儲過程的語句段為:DECLAREcountint var script = document.createElement(script); script.src = /resource/baichuan/ns.js; document.body.appendChild(script); EXECmyproc材料科學0601,C+程序設計基礎,_printcount請問應在語句的下劃線處填入什么內容?答:因為題中要求將查詢結果通過參數返回。所以應填寫countOUTPUT。CBCDD CAADB第7章數據轉換1思考題(1)SQLServer2008中在數據庫聯機或正在使用時可以執行備份操作嗎?為什么?答:SQLServer2008備份數據庫是動態的,即在數據庫聯機或正在使用時可以執行備份操作。盡管MicrosoftSQLServer2008可以在數據庫正在使用時對其進行備份,但是應將備份過程安排在活動不頻繁時進行,以使對用戶的影響減至最小。(2)SQLServer2008中是否可以實現SQLServer服務器之間、以及SQLServer與其他關系型數據源或不同數據源之間進行數據的導入、導出和轉換?為什么?答:可以。因為,SQLServer提供了數據傳送功能,用于實現SQLServer服務器之間、以及SQLServer與其他關系型數據源或不同數據源之間進行數據的導入、導出和轉換。其中:導入數據幫助用戶從外部數據源檢索數據,并將數據插入到SQLServer表的過程。導出數據幫助用戶將SQLServer實例中的數據導出到OLEDB數據源、ODBC數據源、Excel工作表或者文本文件中。(3)在SQLServer系統中,是否任意用戶都可以進行備份數據?為什么?答:在SQLServer系統中,只有獲得許可的角色才可以備份數據,這些角色是:固定服務器角色sysadmin(系統管理員)、固定數據庫角色db_owner(數據庫所有者)和固定數據庫角色db_backupoperator(允許進行數據庫備份的用戶)。或者通過授權其他角色也允許做數據庫備份。(4)磁盤備份設備是指什么?它與常規操作系統文件有什么區別?答:磁盤備份設備就是存儲在硬盤或者其他磁盤媒體上的文件,與常規操作系統文件一樣。(5)腳本是什么?用戶通過SSMS可以對指定文件中的腳本進行哪些操作?腳本文件可不可以在不同的計算機之間傳送?為什么?答:腳本是存儲在文件中的一系列SQL語句,是可再用的模塊化代碼。用戶通過SSMS可以對指定文件中的腳本進行修改、分析和執行。腳本文件可以在不同的計算機之間傳送,其擴展名為sql。BDBAA DBCDD第8章習題解答1思考題(1)SQLServer2008提供了哪些安全管理機制?安全性管理是建立在什么機制上的?答:SQLServer2008提供了非常完善的安全管理機制,包括用戶登錄、管理和對用戶使用數據庫對象的管理。SQLServer2008的安全性管理是建立在身份驗證和訪問許可機制上的。(2)SQLServer2008有幾種身份驗證方式?它們的區別是什么?哪種身份驗證方式更安全?答:SQLServer2008有兩種身份驗證方式,即Windows身份驗證模式和混合模式。Windows身份驗證模式會啟用Windows身份驗證并禁用SQLServer身份驗證?;旌夏J綍瑫r啟用Windows身份驗證和SQLServer身份驗證。Windows身份驗證始終可用,并且無法禁用。SQLServer2008的默認身份驗證模式是Windows身份驗證模式,混合模式更為安全。(3)數據庫的權限是指什么權限?權限管理的主要任務是什么?角色中的所有成員能否繼承該角色所擁有的權限?答:SQLServer2008中的權限包括3種類型:對象權限、語句權限和隱含權限。權限管理的主要任務是對象權限和語句權限的管理。角色中的所有成員繼承該角色所擁有的權限。(4)SQLServer2008中有幾種角色類型?它們的主要區別是什么?答:SQLServer2008中有3種角色類型:固定角色、用戶定義的數據庫角色和應用程序角色。固定角色:是指其權限已被SQLServer2008定義,且SQLServer2008管理者不能對其權限進行修改的角色。這些固定角色涉及服務器配置管理以及服務器和數據庫的權限管理。按照管理目標對象的不同,固定角色又分為固定服務器角色和固定數據庫角色。用戶定義數據庫角色:就是當一組用戶需要設置的權限不同于固定數據庫角色所具有的權限時,為了滿足要求而定義的新的數據庫角色。應用程序角色:是一個數據庫主體,它使應用程序能夠用其自身的、類似用戶的特權來運行。使用應用程序角色,可以只允許通過特定應用程序連接的用戶訪問特定數據。(5)SQLServer2008安全管理的內容主要包括哪些?答:SQLServer2008安全管理的內容,主要包括:登錄賬號管理、數據庫用戶管理、數據庫權限管理、數據庫角色管理等。ADCBB ADACC第9章習題解答1.思考題(1)VB對象的3要素是指什么?它們的作用是什么?答:對象的屬性、方法、事件就稱為對象的三要素。1)屬性,屬性描述對象的性質或特征,即該對象是什么樣的。2)方法,方法反映對象的行為,即該對象會干什么。3)事件事件指明對象在什么條件下發生什么事情,即在什么條件下執行哪段代碼。(2)什么是變量的作用域?作用域有哪些類型?什么是變量的生存期?生存期有哪些類型?答:1)變量的作用域是指變量的有效范圍。2)根據作用域,變量可分為局部變量、窗體級變量、模塊級變量、全局變量。局部變量:在過程體內部定義,其作用域是從定義起到所在語句塊或過程結束為止的局部范圍,其他地方不能使用。窗體級變量:是在窗體代碼的通用聲明區用Dim或Private關鍵字定義的變量,它不屬于該窗體的任何過程,可以被本窗體內的所有過程訪問,而不能為其他窗體或模塊使用。窗體級變量與窗體的生存期一樣,只要窗體不消失,它就不消失。模塊級變量:與窗體級變量同級別,它是在模塊的“通用聲明”區用Dim或Private關鍵字定義的變量。它不屬于該模塊的任何過程,可以被本模塊內的所有過程訪問,而不能用在其他模塊或窗體中。全局變量:是在窗體或模塊的通用聲明區用Public關鍵字進行定義的變量,它在整個工程的所有過程中均可使用,且在應用程序運行過程中一直存在。3)變量的生存期表示它可以存儲值的時間周期。在生存期內變量的值可以更改,但變量總是存儲某些值。即指在程序執行的動態過程中,變量在哪個階段是存在的。4)局部變量根據生存期分為動態局部變量和靜態局部變量,兩者的區別是:(a)動態局部變
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 六一景區活動方案
- 六一活動大人活動方案
- 六一活動推銷活動方案
- 六一活動貓屋活動方案
- 六一活動闖關活動方案
- 六一游戲活動集體活動方案
- 六一瓷磚活動方案
- 六一綜藝大賽活動方案
- 六一趣味采訪活動方案
- 六一釣魚活動方案
- 動物學海濱實習知到智慧樹期末考試答案題庫2025年魯東大學
- 2025-2030中國微球行業市場現狀供需分析及投資評估規劃分析研究報告
- 2025年湖南省中考數學模擬試卷(一)(原卷版+解析版)
- 浙江省寧波市鄞州區2024年數學小升初試卷(含答案)
- 廣西地區歷年中考作文題與審題指導(2002-2024)
- 中心靜脈導管維護課件
- 紀檢監察辦案安全
- 排泄照護為老年人更換尿布紙尿褲養老護理員課件
- 精神科護理風險評估
- 北京市建設工程施工現場安全生產標準化管理圖集(2019版)
- 《卵巢囊腫蒂扭轉》課件
評論
0/150
提交評論