- 相關推薦
2015全國計算機三級考試《數據庫技術》模擬試題(七)答案及解析
一、單選題
1.C【解析】對模式進行分解時,既要保證分解具有“無損連接性”,又要保證分解“保持函數依賴”。所謂“無損連接”指分解的若干連接重組時可以精確恢復到原來的數據表,數據記錄既沒有增加也沒有減少。“保持函數依賴”是指原關系模式含有的屬性之問的隱含關系在分解后不能丟失。本題由所給的F可以看出A,B,C為關系中的主鍵,D為非主屬性,D依賴于A,B,C分解可恢復出原關系,但其中隱含的D對A、B的依賴卻丟失了。
2.D【解析】分解使得一個關系變為多個關系,常用于關系模式規范化。一般情況下可以減少部分數據冗余,但不恰當的分解也可能增加冗余。
3.C【解析】一張關系表中的主碼不能為空且具有唯一性。外碼取值可能為被參照關系中已存在的主碼值或空值。最終該表中插入的數據為(1),(2),(4),(6),共4行數據。
4.B【解析】為了提高系統的性能,應該根據應用情況將數據的易變部分和穩定部分、經常存取部分-和存取頻率較低的部分分開存放,較常用的放在高速讀寫的磁盤上,但并沒有說索引一定要在高速磁盤,日志一定要在低速磁帶,要根據訪問頻率決定。
5.D【解析】三層架構將更多的任務傳給服務器端計算,所以增加了網絡的通信量,其運行速度受制于網絡,并不一定會提高。在適用Intemet、維護工作量等方面,B/S比C/S強;在運行速度、數據安全和人機交互等方面,不如C/S。
6.C【解析】l屬于設計數據庫設計中的概念結構設計,Ⅲ屬于邏輯結構設計,Ⅳ屬于物理設計。Ⅱ、V、Vl屬于數據庫的實現與維護。所以答案為c。
7.A【解析】關系數據語言分為關系代數語言、關系演算語言和兼具兩者雙重特點的語言,如SQL,但所有這些語言的共同特點是非過程化的集合操作語言,所以Ⅱ錯誤。Ⅳ是因為查詢數據表時SQL語句不會檢查數據的完整性約束。
8.C【解析】RAIDl0比RAID5在寫數據上更穩定、速度更快,所以C項中應盡量避免存儲在RAID5的磁盤存儲系統中。
9.B【解析】本題考察了有關UML的類圖表示。這里的區別主要在四種表示上:類的UML表示(空心三角實線連接)、接口的UML表示(空心三角虛線連接)、聚合關系的UML表示(空心菱形實線連接)以及合成關系的UML表示(實心菱形實線連接)。類的表示指的是子類對父類關系的繼承;接口與子類繼承比較相似,區別主要在于多繼承上;聚合關系主要表示一種弱的擁有關系,如A對象可以包含B對象,但B對象不是A對象的一部分;而合成是一種強擁有,體現了嚴格的部分和整體關系。此題中,車架和車輪是車的嚴格組成部分,如果缺少一樣,車就沒法開,所以對車來說是必不可少的部分。所以選B。
10.D【解析】此題考察了SQL中CASE WHEN語句的用法。如果是簡單的賦值查詢,比如數據庫表示性別:1表示男,2表示女。則用
CASE sex
When ˊ1ˊTHEN ˊ勇ˊ
Whenˊ2ˊ THENˊ女ˊ
ELSEˊ其它ˊ
END
即可以表示。但如果條件較為復雜或包含判斷式等,則用D所表示的方式。
11.D【解析】標量函數返回一個確定類型的標量值。函數體語句定義在BEGIN-END語句內,其中包含了可以返回值的Transact-SQL命令。
創建標量函數的語法如下:
CREATE FUNCTION[owner name.]function_name
([{@parameter_name[AS][type_schema_name.]parameter_data_type
[=default]}
[,…n]
)
RETURNS return_data_type
[AS]
BEGIN
function_body
RETURN scalar_expression
END
[;]
12.A【解析】A屬性基于對R進行水平劃分,即區別子集主要是通過A屬性。B、D都是基于B屬性對R的劃分。C只是刪除了R表中不等于10的記錄,不屬于劃分分區表的方式。
13.A【解析】架構是形成單個命名空間的數據庫實體的集合。命名空問也是一個集合,其中每個元素的名稱都是唯一的。架構與用戶的關系是一對多的關系,一個用戶只能對應一個架構,但多個用戶可以共享一個架構,所以選A。
14.B【解析】SQL Server Agent是一個任務規劃器和警報管理器,在實際應用環境下,可以先將那些周期性的活動定義成一個任務,然后讓其在SQL Server Agent的幫助下自動運行。假如考生是一名系統管理員,則可以利用SQL Server Agent向自己通知某些警告信息,從而定位出現的問題以提高管理效率。SQLServer Agent主要包括以下幾個組件:作業、警報和操作。所以選B。
15.A【解析】一個數據庫可以包含多個數據文件,這些文件可以存放在一個物理磁盤上,也可以放在不同的物理磁盤上。
16.C 【解析】SQL Server實例就是在數據庫中存在的現實的數據庫例子,它是后臺進程和數據庫文件的集合。僅具有登錄權限的用戶對SQL Server只能進行系統數據庫中有關SQL Server的一些系統信息的查詢,即只能對master、msdb數據庫部分數據進行查詢。所以選C。
17.C【解析】U1要將Tl表中的數據導出,所以要有對數據的查看權限。而u2負責將數據導入到T2表中,則要對表T2有寫入權限。所以選C。
18.C【解析】檢測死鎖有多種方法,包括超時法、等待圖法等。事務等待圖法動態地反映了所有事務的等待情況,并發控制的子系統周期性地生成事務等待圖進行檢測,而不是在執行每個事務時進行檢測。所以選擇C。
19.A【解析】本題是對數據庫維護的考查,服務器網絡的檢測不是數據庫管理員的職責,而應是操作系統管理員的職責。用戶向數據庫發送的SQL數量龐大而且沒有穩定的衡量指標,所以不屬于日常監控范圍。選擇A。
20.B【解析】增加冗余列指的是在多個表中添加相同的列,這樣雖然增加了數據庫服務器存儲的負擔,但可以減少查詢過程中的JOIN(連接)操作,而不是UNION(并)操作。所以選B。
21.B【解析】Ⅱ.檢測事務等待圖并撤銷回路中的某個事務是在數據庫應用系統運行過程中由DBMS完成的工作,不是應用程序設計過程中采取的措施。剩下三個屬于在應用程序設計中預防死鎖的辦法。所以選B。
22.B【解析】Ⅰ屬于數據庫測試,Ⅳ、Ⅴ不可行。
23.B【解析】差異備份是指備份自上一次完全備份之后有變化的數據。SQL Server 2008中除了備份變化的數據外還要備份日志文件,這是因為在恢復時要根據日志中的事務過程進行恢復操作。所以選B。
24.C【解析】數據文件的空間使用量未必比日志文件大,因為日志是快速增長的。此外,使用日志備份并不能降低數據庫的備份空間。所以選C。
25.C【解析】10點備份過數據庫之后,數據庫發生故障導致部分數據損壞,此時再進行完整備份或差異備份都沒有意義。由于日志文件沒有損壞,所以應首先執行結尾日志備份,然后根據上次的完整性備份和新備份的結尾日志文件,找到上次備份的時問點,而后重新執行時問點之后的事務操作,所以選C。
26.B【解析】分布式數據庫的分配方式包括集中式、分割式、全復制式和混合式。集中式指所有數據片斷都安排在一個場地上;分割式指全局數據有且只有一份,它們被分割成若干片段,每個片段被分配在一個特定場地上;全復制式是在每個站點上,都有全局數據的復制樣本,數據的冗余性最大;混合式是指部分站點上是全局數據的若干片段,部分站點上是全局數據的副本。僅僅根據題目要求,不同部門訪問不同的數據子集,并沒有強調某個部門要訪問全局信息,所以不考慮有全局數據的副本的必要,即選B。
27.D【解析】分布透明性包括分片透明性、位置透明性、局部數據模型透明性。分片透明性是最高層次,指的是用戶或應用程序只對全局關系進行操作而不必考慮關系分片的情況。位置透明性是下一層次,指用戶或應用程序只需了解數據分片情況,而不必了解片段的存儲場地。局部數據模型透明性指的是用戶或用戶程序不必了解局部場地上使用的是哪種數據模型,但是必須了解全局數據的分片情況,還需了解各片斷的副本復制情況及各片斷和它們副本的場地位置分配情況。由于本題中考慮到場地2和場地3的選擇,所以位置對用戶來說并不透明,應選D。
28.B【解析】輪轉法:對關系順序掃描,將第i個元組存儲到標號為Di mod n的磁盤上,該方式保證了元組在多個磁盤上均勻分布。散列劃分:選定一個值域為{0,1,…,n-1}的散列函數,對關系中的元組基于劃分屬性進行散列,如果散列函數返回i,則將其存儲到第i個磁盤。范圍劃分:根據表中某個屬性取值區間劃分成不同的子區間,然后根據表中的屬性值所屬的不同區間將表分成不同的子表。根據屬性A對表進行散列劃分,然后在每個劃分內部執行select語句,會大幅提高查詢效率。
29.A【解析】關聯規則是形如X->Y的蘊涵表達式。關聯規則的強度可以用它的支持度(s)和置信度(e)度量。支持度確定規則可以用于給定數據集的頻繁程度,而置信度確定Y在包含x的事務中出現的頻繁程度。兩者可以用公式表示:
從題目中可以看到事務總數是5,A的{啤酒、尿布}支持度計數是3,{啤酒}支持計數是3,所以s=0.6。e=1。同理可得B{面包、尿布}支持計數為3,{面包、尿布、牛奶}支持計數是2,所以S=0.4,C=2/3。C中,{面包、牛奶}支持計數為3,{面包}支持計數為4,所以S=0.6,C=0.75。D中,{面包、啤酒}支持計數為2,{面包、啤酒、尿布}支持計數為2,所以S=0.4,e=1。綜上所述,結果選A。
30.D【解析】元數據是關于數據的數據,或者叫做描述數據的數據。元數據描述了數據的結構、內容、鏈和索引等項內容。在關系數據中,這種描述就是對數據庫、表、列等其他對象的定義。因此可推出,Ⅰ、Ⅲ和V不屬于元數據。所以選D。
二、應用題
1.聚集
【解析】建立索引是加快查詢速度的有效手段。用戶可以根據應用環境的需要,在基本表上建立一個或多個索引,以提供多種存取路徑,加快查找速度。聚集索引是指索引項的順序與表中記錄的物理順序一致的索引組織。
2.邏輯
【解析】視圖是從一個或幾個基本表中導出的虛表。數據庫中只存放視圖的定義,而不存放視圖對應的數據,這些數據仍存放在原表中,并且視圖在一定程度上能提供數據的邏輯獨立性。比如重構數據庫時,將一個基本表垂直地分成多個基本表,盡管數據庫的邏輯結構改變了,但應用程序不必修改,因為新建立的視圖定義為用戶原來的關系,使用戶的外模式保持不變,用戶的應用程序通過視圖仍然能夠查找數據。
3.角色
【解析】用例圖是外部用戶(參與者)所能觀察到的系統功能的模型圖,顯示系統中的用例與角色及其相互關系,主要用于對系統、子系統或類的功能行為進行建模。用例模型由用例、角色和系統三部分組成。
4.@@FETCH—STATUS
【解析】游標是系統為用戶開設的一個數據緩沖區,存放SQL語句的執行結果,每個游標區都有一個名字。用戶可以通過游標逐一獲取記錄,并賦給主變量,交由主語言進一步處理。游標經常會和全局變量@@FETCH_STATUS與WHILE循環來共同使用,以達到遍歷游標所在數據集的目的。在執行一條fetch語句后,必須在對另一游標執行另一fetch語句前測試@@FETCH_STATUS。
5.EXCEPT
【解析】SELECT語句的查詢結果是元組的集合,所以多個SELECT語句的結果可以進行集合操作。集合操作主要包括并操作UNION、交操作INTERSECT和差操作EXCEPT。參加集合操作的各查詢結果的列數必須相同,對應項的數據類型也必須相同。
6.datediff()
【解析】DATEDIFF()函數可以返回兩個日期之間的天數。
DATEDIFF(datepart,startdate,enddate),startdate和enddate參數是合法的日期表達式。例如SQL表達式:
SELECT DATEDIFF(day,ˊ2008-12-30ˊ,ˊ2008-12-29 ˊ)AS DiffDate
7.output
【解析】存儲過程是SQL語句和可選控制流語句的預編譯集合,它用一個名字存儲一個處理單元。創建存儲過程為:
CREATE Procedure過程名([參數1,參數2,…])
AS;
默認的參數全為輸入參數,如果包含輸出參數,在相應的參數后面加0utput標識。如:
CREATE Procedure過程名([參數1,參數2 0utput,…])
AS;
執行存儲過程時則調用EXEC存儲過程名參數名1,參數名2 0utput,執行存儲過程的參數與CREATE時的參數對應。
8.40
【解析】SQL Server中數據存儲的基本單位是頁,為數據庫中的數據文件(.mdf或.ndf)分配的磁盤空間可以從邏輯上劃分成頁(從0到n連續編號),磁盤I/0操作在頁級執行,也就是說,SQL Server讀取或寫入所有數據頁。在SQL Server中,頁的大小為8 KB,這意味著SQL Server數據庫中每MB有128頁。每頁的開頭是96字節的標頭,用于存儲有關頁的系統信息,此信息包括頁碼、頁類型、頁的可用空間以及擁有該頁的對象的分配單元ID。行不能跨頁,但是行的部分可以移出行所在的頁,因此行實際可能非常大。頁的單個行中的最大數據量和開銷是8,060字節,由于題目中每行數據占用3000字節,所以一頁可以存放兩個數據行,1MB的存儲空問大約有l28頁,對應256行數據,用10000/256即可得到需要的存儲空間為40MB。
9.db_datawriter
【解析】數據庫角色是被命名的一組與數據庫操作的相關的權限,角色是權限的集合。因此,可以為一組具有相同權限的用戶創建一個角色,使用角色來管理數據庫權限可以簡化授權的過程。SQL提供了9個內置的角色,以便在數據庫級別授予用戶特殊的權限集合,如下表:
db OWIler | 具有在數據庫中執行任何操作的權限,包括配置、維護數據庫及刪除數據庫 |
db accessadmin | 該角色的成員可以從數據庫中增加或者刪除用戶的權限 |
db_backupoperator | 該角色的成員允許備份數據庫、備份日志的權限 |
db_datareader | 具有查詢數據庫中所有用戶數據的權限 |
db_datawriter | 具有插入、刪除和更新數據庫中所有用戶的權限 |
db_ddladmin | 具有執行數據定義語言的權限 |
db_denydatareader | 不允許具有查詢數據庫中所有用戶數據的權限 |
db_denydatawriter | 不具有插入、刪除和修改數據庫中所有用戶數據的權限 |
db_securityadmin | 具有管理數據庫角色、角色成員以及數據庫中語句和對象的權限 |
public | 默認角色 |
10.事務內部
【解析】數據庫系統中的故障的種類分為事務內部故障、系統故障、介質故障、計算機病毒。事務故障分為預期事務內部故障和非預期事務內部故障。非預期的事務內部故障是不可預期的,不能由應用程序處理的,包括運算溢出、并發事務發生死鎖而被撤銷該事務、違反了某些完整性限制等。而系統故障是造成系統停止運轉的任何事件,使得系統要重新啟動。介質故障指硬件損壞等。
11.可串行
【解析】DBMS對并發事務不同的調度可能會產生不同的結果。為了衡量調度正確性,執行結果如果可以等價于串行調度則認為是正確的,這樣的調度叫可串行調度。而兩段鎖協議就是實現可串行調度的協議。若并發執行的所有事務均遵守兩段鎖協議,則這些事務的任何并發調度都是可串的。
12.差量
【解析】差量備份只記錄數據庫上一次完全轉儲后的變化部分,這樣可以提高轉儲效率,同時保證了備份中數據的完整性。
13.半
【解析】數據在網絡中傳輸時,則是以整個關系(也可以是片段)傳輸,顯然這是一種冗余的方法。在一個關系傳輸到另一場地后,并非每個數據都參與連接操作,因此,不參與連接的數據或無用的數據不必在網絡中來回傳輸。采用半連接操作即可在網絡中只傳輸參與連接的數據。
14.鉆取
【解析】常用的OLAP多維分析操作有切片、切塊、旋轉、下鉆和卷起。通過這些操作,使用戶能從多個角度多側面觀察數據。卷起是在數據立方體中執行聚集操作,通過在維級別中上升或通過消除某個或某些維來觀察更概括的數據。下鉆是通過在維級別中下降或通過引入某個或某些維來更細致的觀察數據。切片和切塊實現局部數據的顯示,幫助用戶從眾多混雜的數據中進行選擇。旋轉就是改變維的方向。
15.技術
【解析】元數據是關于數據的數據。在數據倉庫系統中,元數據可以幫助數據倉庫管理員和數據倉庫的開發人員非常方便地找到他們所關心的數據。元數據是描述數據倉庫內數據的結構和建立方法的數據,可將其按用途的不同分為兩類:技術元數據和業務元數據。
三、設計與應用題
1.(1)【解題思路】
函數依賴定義:設R(u)是屬性集U上的關系模式,X,Y是U的子集,若對于R(U)的任意一個可能的關系r,r中不可能存在兩個元組在X上的屬性值相等,在Y上的屬性值不等,則稱X函數確定Y或Y函數依賴X,記作X->Y。函數依賴是指關系R的一切關系均要滿足的約束條件。
【參考答案】
(商店編號,商品編號)->部門編號,(商店編號,部門編號)->負責人,(商店編號,商品編號)->庫存量。
(2)【解題思路】
設K為R中的屬性或屬性組合,若u完全依賴于K,則K為R的候選碼。
【參考答案】
(商店編號,商品編號)
(3)【解題思路】
關系數據庫是要滿足一定要求的。滿足最低要求的叫第一范式,在第一范式中滿足進一步要求的為第二范式,其余以此類推。顯然該關系模式滿足第一范式,接下來檢查其是否滿足第二范式。在第二范式中,要求關系模式中不存在部分依賴,每一個非主屬性完全依賴于碼,而根據第一空可得如下依賴關系:(部門編號,商店編號)->負責人,所以屬于第二范式。它的非主屬性(不包含在任何候選碼中的屬性)有3個:部門編號、負責人和庫存量,并皆完全函數依賴于主碼。將(商店編號、商品編號)記作X,(商店編號、部門編號)記作Y,負責人記作Z,即x→Y,Y→Z。由此可以看出,存在傳遞依賴,故不屬于第三范式。
【參考答案】
第二范式
(4)【解題思路】
第三范式中要求每一個屬性既不部分依賴于碼也不傳遞依賴于碼。
【參考答案】
R1(商店編號、商品編號、部門編號、庫存量);B2(商店編號、部門編號、負責人)。
2.(1)【解題思路】
數據實際上是依附于表而存在,我們將表放入到文件組中,而文件組是一個邏輯的概念,其實體是輔助數據庫文件(ndf),所以就等于將我們指定的數據放入到了指定的輔助數據庫文件中,然后將這些輔助數據庫文件放人不同的磁盤分區中,就可以有針對性的對相應的數據實現性能的優化。
【參考答案】
create partition scheme RangePSl
as partition RangePFl
to(fgl,f91.fgl,f92)
(2)【解題思路】
創建分區表可通過以下幾個步驟實現:
①創建分區函數。
②創建分區方案。
③使用分區方案創建表。
【參考答案】
創建分區表:
create table orders
(
GID int identity(1,1)primary key,
GoodName varchar(40),
Price float
)
on RangePSl(GID)
3.(1)【解題思路】
該技術人員使用了帶有索引的視圖,將所關心的數據(商品號,銷售額,該商品號在表中出現的次數)從銷售明細表中提取出來建立視圖,并對該視圖建立按商品號排序的聚簇索引,這樣大大減少了在搜索不同商品的銷售額時調用的數據表的規模,從而提高了查詢效率。由于表的數據規模很大,建立該視圖后,同一種商品不會多次出現在表中,而是通過一個計數變量cnt表示,即在檢索時大大減少了檢索規模。創建索引時,UNIQUE關鍵字表明此索引的每一個索引值只對應唯一的數據記錄。CLUSTER表示要建立的索引是聚簇索引(所謂聚簇索引是指索引項的順序與表中記錄的物理順序一致的索引組織)。
【參考答案】
語句功能:建立包含所關心數據(商品號,銷售額,該商品號在表中出現的次數)的帶索引的視圖,并建立按商品號對應銷售額UNIQUE聚簇排序的索引,從而大大縮小了查詢語句的查詢范圍,提高了查詢效率。
原因:視圖中將問接相關的屬性列(序列號,銷售日期,商品號,銷售數量,銷售價格)轉換成了目標屬性列,減少了搜索空問,同時建立UNIQUE CLUSTERED索引,使查詢商品號的數據記錄唯一,因此降低了搜索范圍,提高了搜索效率。
(2)【解題思路】
由于視圖是不實際存儲數據的虛表,因此對視圖的更新最終要轉換為對基本表的更新。而用戶通過視圖對數據進行增加、刪除、修改時,有意或無意地對不屬于視圖范圍內的基本表數據進行操作,會破壞數據的一致性。而且視圖中的數據本身就是冗余的,每次對表進行修改時,同時也要對相應的視圖進行修改,這大大增加了系統的負擔。
【參考答案】
不合適,每天大量的插入操作使得在修改表的同時也要對視圖進行修改,增加了系統的負擔,然而該統計功能一個月才用一次,這樣導致系統的利用率也較為低下。
【全國計算機三級考試《數據庫技術》模擬試題七答案及解析】相關文章:
2015全國計算機三級考試《數據庫技術》模擬試題(八)答案及解析03-21
2015全國計算機三級考試《數據庫技術》模擬試題(一)答案及解析03-28
2015全國計算機三級考試《數據庫技術》模擬試題(二)答案及解析03-28
2015全國計算機三級考試《數據庫技術》模擬試題(三)答案及解析03-28
2015全國計算機三級考試《數據庫技術》模擬試題(九)答案及解析03-31
2015全國計算機三級考試《數據庫技術》模擬試題(七)03-30
2015全國計算機三級考試《數據庫技術》模擬試題(二)03-28
計算機三級考試《數據庫技術》試題及答案11-27
計算機三級網絡技術考試模擬試題及答案03-30