2016計(jì)算機(jī)三級(jí)《數(shù)據(jù)庫(kù)技術(shù)》考前沖刺試題

字號(hào):

單選題
    1設(shè)有關(guān)系表:職工(職工號(hào),姓名,領(lǐng)導(dǎo)職工號(hào)),其中職工號(hào)是主碼,領(lǐng)導(dǎo)職工號(hào)是外碼。當(dāng)前表中沒有任
    何數(shù)據(jù)?,F(xiàn)在依次向該表中插入如下數(shù)據(jù)
    (1)(e1,Tom,e2)
    (2)(e3,Jerry,null)
    (3)(null,F(xiàn)00,null)
    (4)(e2,F(xiàn)ake,e2)
    (5)(e1,Ghost,e3)
    (6)(e4,Wh0,el)
    則終該表中有(  )行數(shù)據(jù)。
    A.2B.3C.4D.5
    參考答案:C
    參考解析:一張關(guān)系表中的主碼不能為空且具有性。外碼取值可能為被參照關(guān)系中已存在的主碼值或空值。終該表中插入的數(shù)據(jù)為(1),(2),(4),(6),共4行數(shù)據(jù)。
    2關(guān)于數(shù)據(jù)庫(kù)視圖,下列說法正確的是(  )。
    A.視圖一定能提高數(shù)據(jù)的操作性能
    B.定義視圖的語句可以是任何數(shù)據(jù)操作語句
    C.視圖可以提供一定程度的數(shù)據(jù)獨(dú)立性
    D.視圖的數(shù)據(jù)一般是物理存儲(chǔ)的
    參考答案:C
    參考解析:視圖是從一個(gè)或幾個(gè)基本表(或視圖)中導(dǎo)出的虛表,數(shù)據(jù)庫(kù)中只存放了視圖的定義,不存放視圖對(duì)應(yīng)的數(shù)據(jù)。它是原始數(shù)據(jù)庫(kù)數(shù)據(jù)的一種變換,是查看表中數(shù)據(jù)的另外一種方式??梢詫⒁晥D看成是一個(gè)移動(dòng)的窗口,通過它可以看到感興趣的數(shù)據(jù)。視圖是從一個(gè)或多個(gè)實(shí)際表中獲得的,這些表的數(shù)據(jù)存放在數(shù)據(jù)庫(kù)中。那些用于產(chǎn)生視圖的表叫做該視圖的基表。一個(gè)視圖也可以從另一個(gè)視圖中產(chǎn)生。視圖的特點(diǎn)體現(xiàn)在三個(gè)方面:①簡(jiǎn)單性,看到的就是需要的。視圖不僅可以簡(jiǎn)化用戶對(duì)數(shù)據(jù)的理解,也可以簡(jiǎn)化對(duì)它們的操作。那些被經(jīng)常使用的查詢可以被定義為視圖,從而使得用戶不必為以后的操作每次指定全部的條件;②安全性,通過視圖用戶只能查詢和修改他們所能見到的數(shù)據(jù)。數(shù)據(jù)庫(kù)中的其它數(shù)據(jù)則既看不見也取不到;③邏輯數(shù)據(jù)獨(dú)立性,視圖可幫助用戶屏蔽真實(shí)表結(jié)構(gòu)變化帶來的影響;根據(jù)視圖的特點(diǎn)可以達(dá)到以下的幾點(diǎn)作用:①簡(jiǎn)化數(shù)據(jù)查詢語句;②使用戶從多角度看待同一數(shù)據(jù);③提高數(shù)據(jù)安全性;④提供了一定程度的邏輯獨(dú)立性。所以答案選C。
    3SQL Server 2008中,如果希望用戶u1在DBl數(shù)據(jù)庫(kù)中具有查詢T1表的權(quán)限,正確的授權(quán)語句是(  )。
    A.GRANT SELECT ON DB1(T1)TO u1B.GRANT SELECT TO u1 ON DB1(T1)C.GRANT SELECT TO u1 ON T1D.GRANT SELECT ON T1 TO u1
    參考答案:A
    參考解析:
    SQL Server 2008中GRANT的用法為:
    GRANT{ALL[PRIVILEGES]}
    l permission[(column[,…n])][,…n]
    [ON[class::]securable]TO principal[….n]
    [WITH GRANT OPTION][AS principal]
    4關(guān)于數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的需求分析工作,下列說法正確的是(  )。
    A.通過需求分析過程,需要確定出整個(gè)應(yīng)用系統(tǒng)的目標(biāo)、任務(wù)和系統(tǒng)的范圍說明。
    B.在需求分析階段,系統(tǒng)需求分析員要與用戶充分溝通,并做出各類用戶視圖。
    C.數(shù)據(jù)需求分析的主要工作是要辨識(shí)出數(shù)據(jù)處理中的數(shù)據(jù)處理流程
    D.數(shù)據(jù)操作響應(yīng)時(shí)間、系統(tǒng)吞吐量、大并發(fā)用戶數(shù)都是性能需求分析的重要指標(biāo)
    參考答案:D
    參考解析:數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的需求包括:數(shù)據(jù)需求分析,數(shù)據(jù)處理需求分析,業(yè)務(wù)需求分析及其在性能、存儲(chǔ)、安全、備份和恢復(fù)等方面的要求。C項(xiàng)中,數(shù)據(jù)需求分析的主要工作是從用戶視圖出發(fā),分析與辨識(shí)應(yīng)用領(lǐng)域所管理的各類數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu),形成數(shù)據(jù)字典的主要內(nèi)容。B中在需求分析階段,系統(tǒng)需求分析員與用戶充分溝通,并形成文檔化的需求描述。A中通過需求分析過程,需要系統(tǒng)的描述整個(gè)應(yīng)用系統(tǒng)的功能特征、性能特征和約束,并形成需求規(guī)范說明文檔。D中數(shù)據(jù)操作響應(yīng)時(shí)間、系統(tǒng)吞吐量和大并發(fā)用戶數(shù)都是性能需求分析的重要指標(biāo)。所以選D。
    5設(shè)有關(guān)系模式:作者(作者編號(hào),姓名,身份證號(hào),職業(yè),出生日期)。下列能夠作為該關(guān)系模式候選碼的是(  )。
    A.作者編號(hào),姓名B.作者編號(hào),身份證號(hào)C.作者編號(hào),職業(yè)D.身份證號(hào),出生日期
    參考答案:B
    參考解析:關(guān)系模型中的候選碼定義為某一組屬性可以標(biāo)識(shí)一個(gè)元組,則稱為該屬性組的候選碼,所以其候選碼屬性的取值必須不能有重復(fù)也不能為空。題目中姓名,職業(yè),出生日期都可能重復(fù)。
    6下列全部屬于結(jié)構(gòu)圖的組圖是(  )。
    A.用例圖、類圖、順序圖、部署圖
    B.類圖、組件圖、部署圖、活動(dòng)圖
    C.用例圖、對(duì)象圖、狀態(tài)圖、組件圖
    D.類圖、對(duì)象圖、組件圖、部署圖
    參考答案:D
    參考解析:結(jié)構(gòu)圖是指以模塊的調(diào)用關(guān)系為線索,用自上而下的連線表示調(diào)用關(guān)系并注明參數(shù)傳遞的方向和內(nèi)容,從宏觀上反映模塊層次結(jié)構(gòu)的圖形。其中結(jié)構(gòu)圖包括用例圖、類圖、組件圖、對(duì)象圖和部署圖。
    7設(shè)在SQL Server 2008中,用戶U1在DB1數(shù)據(jù)庫(kù)中創(chuàng)建T#Temp表。下列關(guān)于#Temp表的說法,正確的是(  )。
    A.只有在創(chuàng)建#Temp表的連接中才可以查詢#Temp表數(shù)據(jù)
    B.在所有用戶U1發(fā)起的連接中,都可以查詢#Temp表數(shù)據(jù)
    C.在創(chuàng)建#Temp表的連接未斷開時(shí),DB1數(shù)據(jù)庫(kù)的所有用戶都可以查詢#Temp表數(shù)據(jù)
    D.在創(chuàng)建#Temp表的連接斷開后,DBl數(shù)據(jù)庫(kù)的所有用戶仍可以查詢#Temp表數(shù)據(jù)
    參考答案:A
    參考解析:用戶若想在SQL Senrer中訪問數(shù)據(jù)庫(kù)的表,必須同該表建立一個(gè)連接表示通信渠道,當(dāng)連接中斷時(shí),無法對(duì)其進(jìn)行訪問。B中只有用戶與#temp建立的連接才可以訪問到表。C中不是所有用戶都可以訪問該表,只有U1用戶和由U1授權(quán)的用戶可以訪問。D項(xiàng)很明顯也不正確。故答案為A。
    9下列敘述中不屬于三層B/S結(jié)構(gòu)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)特點(diǎn)和操作特征的是(  )。
    A.客戶端使用瀏覽器,瀏覽器與Web應(yīng)用服務(wù)器之間的通信使用超文本傳輸協(xié)議(HTTP)
    B.數(shù)據(jù)庫(kù)服務(wù)器接受應(yīng)用服務(wù)器提出的數(shù)據(jù)操作請(qǐng)求,對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作,并將操作結(jié)果返回給應(yīng)用服務(wù)器
    C.這種結(jié)構(gòu)使客戶端和服務(wù)器能在不同的系統(tǒng)問通信,但對(duì)客戶機(jī)配置要求較高,且應(yīng)用軟件維護(hù)代價(jià)也較大
    D.這種結(jié)構(gòu)不受時(shí)空限制,使用者可以在全球任何地方,任何時(shí)間請(qǐng)求數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)提供的各種數(shù)據(jù)服務(wù)
    參考答案:C
    參考解析:B/S結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的特點(diǎn)是用戶界面完全通過www瀏覽器實(shí)現(xiàn),一部分事務(wù)邏輯在前端實(shí)現(xiàn),主要的事務(wù)邏輯在服務(wù)器實(shí)現(xiàn),所以其對(duì)客戶機(jī)配置要求不高,即使對(duì)服務(wù)器要求較高,也不需要安裝客戶端軟件。
    10設(shè)有下列關(guān)于數(shù)據(jù)庫(kù)分析、設(shè)計(jì)與實(shí)現(xiàn)的工作:
    Ⅰ.用概念數(shù)據(jù)模型表示數(shù)據(jù)對(duì)象的特征及其相互間的關(guān)聯(lián)關(guān)系
    Ⅱ.進(jìn)行數(shù)據(jù)庫(kù)的備份與恢復(fù)等日常維護(hù)
    Ⅲ.在ER圖的基礎(chǔ)上確定數(shù)據(jù)庫(kù)關(guān)系模式
    Ⅳ.調(diào)整數(shù)據(jù)庫(kù)邏輯模式,確定文件組織與存取方式,評(píng)估物理模式
    V.考慮分析DBAS運(yùn)行過程中備份數(shù)據(jù)庫(kù)策略,如備份時(shí)問點(diǎn)和備份周期
    Ⅵ.事務(wù)和應(yīng)用程序的編碼及測(cè)試
    上述工作中,屬于DBAS系統(tǒng)設(shè)計(jì)階段工作的是(  )。
    A.僅Ⅰ、Ⅱ、Ⅲ、Ⅳ和VB.僅Ⅰ、Ⅱ、Ⅲ和ⅣC.僅Ⅰ、Ⅲ和ⅣD.全部
    參考答案:C
    參考解析:Ⅰ屬于設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)中的概念結(jié)構(gòu)設(shè)計(jì),Ⅲ屬于邏輯結(jié)構(gòu)設(shè)計(jì),Ⅳ屬于物理設(shè)計(jì)。Ⅱ、V、Ⅵ屬于數(shù)據(jù)庫(kù)的實(shí)現(xiàn)與維護(hù)。所以答案為C。
    11設(shè)在SQL Server 2008中有商品表(商品號(hào),商品名,進(jìn)貨價(jià)格,銷售價(jià)格),現(xiàn)要求銷售價(jià)格必須至少是進(jìn)貨價(jià)格的1.1倍。下列關(guān)于實(shí)現(xiàn)此約束的說法,正確的是(  )。
    A.可以用觸發(fā)器或者用CHECK約束實(shí)現(xiàn)
    B.只能用CHECK約束實(shí)現(xiàn)
    C.只能用觸發(fā)器實(shí)現(xiàn)
    D.可以用DEFAULT約束實(shí)現(xiàn)
    參考答案:A
    參考解析:用戶定義的完整性可以用CHECK短語指定列值應(yīng)滿足的條件,也可以用觸發(fā)器約束,通過服務(wù)器自動(dòng)激活相應(yīng)的觸發(fā)器,對(duì)數(shù)據(jù)進(jìn)行完整性控制。所以觸發(fā)器或CHECK約束都可以實(shí)現(xiàn)。但DEFAULT約束不能實(shí)現(xiàn)用戶自定義的完整性,只能表示實(shí)體或參照完整性。
    12下面關(guān)于模式分解的說法,錯(cuò)誤的是(  )。
    A.分解并不總能提高查詢效率
    B.分解通常使得涉及屬性少的查詢執(zhí)行效率更高
    C.分解通常使得簡(jiǎn)單的更新事務(wù)執(zhí)行效率更高
    D.分解總是能降低存儲(chǔ)空間的要求,因?yàn)樗芟哂鄶?shù)據(jù)
    參考答案:D
    參考解析:分解使得一個(gè)關(guān)系變?yōu)槎鄠€(gè)關(guān)系,常用于關(guān)系模式規(guī)范化。一般情況下可以減少部分?jǐn)?shù)據(jù)冗余,但不恰當(dāng)?shù)姆纸庖部赡茉黾尤哂唷?BR>    13設(shè)有職工表(職工號(hào),姓名,地址1,地址2),其中,職工號(hào)為主碼?,F(xiàn)要求地址1和地址2組合起來不能有重復(fù)值。在SQL Server 2008環(huán)境中有下列創(chuàng)建該表的語句:
    1.CREATE TABLE職工表(
    職工號(hào)int PRIMARY KEY,
    姓名nchar(10),
    地址1 nvarchar(20),
    地址2 nvarchar(20),
    UNIQUE(地址1,地址2)
    )
    Ⅱ:CREATE TABLE職工表(
    職工號(hào)int PRIMARY KEY,
    姓名nchar(10),
    地址1nvarchar(20).
    地址2 nvarchar(20)UNIQUE(地址1,地址2)
    )
    Ⅲ.CREATE TABLE職工表(
    職工號(hào)int PRIMARY KEY.
    姓名nchar(10),
    地址1 nvarchar(20)UNIQUE,
    地址2 nvarchar(20)UNIQUE
    )
    IV.CREATE TABLE職工表(
    1職工號(hào)int PRIMARY KEY。
    姓名nchar(10),
    地址1 nvarchar(20)UNIQUE(地址1,地址2),
    地址2 nvarchar(20)
    )
    上述語句能正確實(shí)現(xiàn)此約束的是(  )。
    A.僅Ⅰ和ⅢB.僅Ⅱ和ⅣC.僅Ⅰ、Ⅱ和ⅣD.都正確
    參考答案:C
    參考解析:Ⅲ表示在地址1的所有記錄中地址不允許重復(fù),即每個(gè)職工的地址1都不同且每個(gè)職工的地址2也不允許重復(fù)。UNIQUE是對(duì)創(chuàng)建的表的屬性約束條件,與位置無關(guān)。
    14現(xiàn)要為某大型商場(chǎng)開發(fā)一個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),在該應(yīng)用系統(tǒng)的生命周期中,設(shè)有下列活動(dòng):
    Ⅰ.開發(fā)人員執(zhí)行DDL代碼建立數(shù)據(jù)庫(kù)結(jié)構(gòu)
    Ⅱ.編寫商品信息錄入和導(dǎo)入程序,在系統(tǒng)投入運(yùn)行前建立商品信息清單
    Ⅲ.根據(jù)商場(chǎng)銷售業(yè)務(wù)開展情況,調(diào)整數(shù)據(jù)庫(kù)中的商品清單和價(jià)格
    Ⅳ.準(zhǔn)備銷售新商品時(shí),使用商品信息錄入或?qū)氤绦?,將新商品信息加入到商品清單?BR>    Ⅴ為了防止數(shù)據(jù)丟失,定期對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行轉(zhuǎn)儲(chǔ)
    以上活動(dòng)中,屬于商場(chǎng)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)實(shí)施活動(dòng)的是(  )。
    A.僅Ⅰ和ⅡB.僅Ⅰ、Ⅱ和ⅢC.僅Ⅲ和ⅣD.僅Ⅰ和Ⅴ
    參考答案:A
    15存儲(chǔ)管理器是數(shù)據(jù)庫(kù)管理系統(tǒng)非常重要的組成部分。下列關(guān)于存儲(chǔ)管理器的說法,錯(cuò)誤的是(  )。
    A.存儲(chǔ)管理器負(fù)責(zé)檢查用戶是否具有數(shù)據(jù)訪問權(quán)限
    B.為了提高數(shù)據(jù)訪問效率,存儲(chǔ)管理器會(huì)將部分內(nèi)存用于數(shù)據(jù)緩沖,同時(shí)使用一定的算法對(duì)內(nèi)存緩沖區(qū)中的數(shù)據(jù)塊進(jìn)行置換
    C.存儲(chǔ)管理器會(huì)為編譯好的查詢語句生成執(zhí)行計(jì)劃,并根據(jù)執(zhí)行計(jì)劃訪問相關(guān)數(shù)據(jù)
    D.存儲(chǔ)管理器以事務(wù)方式管理用戶對(duì)數(shù)據(jù)的訪問,以確保數(shù)據(jù)庫(kù)并發(fā)訪問的正確性
    參考答案:C
    參考解析:C項(xiàng)是查詢處理器的功能,不是存儲(chǔ)管理器功能。
    16數(shù)據(jù)庫(kù)設(shè)計(jì)過程中有如下工作:
    1.文件組織與存取設(shè)計(jì)
    Ⅱ.數(shù)據(jù)分布設(shè)計(jì)
    Ⅲ.確定數(shù)據(jù)庫(kù)和操作系統(tǒng)參數(shù)
    Ⅳ.將關(guān)系模式和相關(guān)視圖轉(zhuǎn)換為特定數(shù)據(jù)庫(kù)管理系統(tǒng)的可支持的表和視圖
    Ⅴ.從時(shí)間、空間、維護(hù)代價(jià)等方面評(píng)估物理設(shè)計(jì)結(jié)果,并將評(píng)估后的結(jié)果實(shí)施到數(shù)據(jù)庫(kù)中
    上述工作中屬于數(shù)據(jù)庫(kù)物理設(shè)計(jì)的是(  )。
    A.僅Ⅰ、Ⅱ和ⅤB.僅Ⅰ和ⅢC.僅Ⅰ、Ⅱ、Ⅲ和ⅤD.以上全部
    參考答案:C
    參考解析:數(shù)據(jù)庫(kù)物理設(shè)計(jì)主要步驟包括:數(shù)據(jù)庫(kù)邏輯模式調(diào)整;文件組織與存取設(shè)計(jì);數(shù)據(jù)分布設(shè)計(jì);安全模式設(shè)計(jì);確定系統(tǒng)配置;物理模式評(píng)估。其中將關(guān)系模式和相關(guān)視圖轉(zhuǎn)換為特定數(shù)據(jù)庫(kù)管理系統(tǒng)的可支持的表和視圖不屬于物理設(shè)計(jì)的范疇。
    17下列有關(guān)三級(jí)模式結(jié)構(gòu)和數(shù)據(jù)獨(dú)立性的說法中,正確的是(  )。
    A.在一個(gè)數(shù)據(jù)庫(kù)中可以定義多個(gè)內(nèi)模式,可利用不同的內(nèi)模式來描述特定用戶對(duì)數(shù)據(jù)的物理存儲(chǔ)需求
    B.外模式是用戶與數(shù)據(jù)庫(kù)系統(tǒng)的接口,用戶可通過外模式來訪問數(shù)據(jù),在一個(gè)數(shù)據(jù)庫(kù)中只能定義一個(gè)外模式
    C.三級(jí)模式和兩層映像的系統(tǒng)結(jié)構(gòu)提供了數(shù)據(jù)獨(dú)立性,即當(dāng)數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)發(fā)生變化時(shí),應(yīng)用程序不受影響
    D.數(shù)據(jù)獨(dú)立性使得數(shù)據(jù)的定義和描述與應(yīng)用程序相分離,簡(jiǎn)化了數(shù)據(jù)庫(kù)應(yīng)用程序的開發(fā),但增加了用戶維護(hù)數(shù)據(jù)的代價(jià)
    參考答案:C
    參考解析:內(nèi)模式又稱物理模式,處于底層,它給出了數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法,內(nèi)模式反映了數(shù)據(jù)在計(jì)算機(jī)物理結(jié)構(gòu)中的實(shí)際存儲(chǔ)形式。一個(gè)數(shù)據(jù)庫(kù)只對(duì)應(yīng)一種內(nèi)模式。模式是用戶的局部模式。一個(gè)數(shù)據(jù)庫(kù)中可以定義多個(gè)外模式。數(shù)據(jù)獨(dú)立性不僅簡(jiǎn)化數(shù)據(jù)庫(kù)應(yīng)用程序的開發(fā),同時(shí)因?yàn)槠帘瘟宋锢斫Y(jié)構(gòu)的差異,所以也簡(jiǎn)化了用戶維護(hù)數(shù)據(jù)的代價(jià)。數(shù)據(jù)庫(kù)系統(tǒng)三級(jí)模式和兩層映像的系統(tǒng)結(jié)構(gòu)保證了數(shù)據(jù)庫(kù)系統(tǒng)中能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。
    18下列不屬于信息系統(tǒng)需求分析的常用建模方法是(  )。
    A.ERB.IDEFOC.DFDD.UML
    參考答案:A
    參考解析:常用的需求建模方法包括:①DFD方法;②IDEFO方法;③UML方法。
    19在數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開發(fā)的需求調(diào)研階段,需要對(duì)用戶提出的需求進(jìn)行分析和整理。此過程不僅需要描述用戶提出的具體功能需求,也需要對(duì)用戶未明確提出的非功能需求進(jìn)行描述。設(shè)在某商場(chǎng)經(jīng)營(yíng)管理系統(tǒng)的需求分析階段整理了下列需求:
    Ⅰ.系統(tǒng)需要支持會(huì)員制
    Ⅱ.系統(tǒng)不需要考慮財(cái)務(wù)核算功能
    Ⅲ.系統(tǒng)應(yīng)長(zhǎng)期穩(wěn)定運(yùn)行
    Ⅳ.系統(tǒng)應(yīng)有銷售統(tǒng)計(jì)功能
    Ⅴ.系統(tǒng)應(yīng)保證數(shù)據(jù)存儲(chǔ)安全
    上述需求中屬于非功能需求的是(  )。
    A.僅Ⅲ和ⅣB.僅Ⅲ和VC.僅Ⅳ和VD.僅Ⅰ、Ⅱ和V
    參考答案:B
    參考解析:需求分析就是分析用戶的應(yīng)用請(qǐng)求。Ⅲ和Ⅴ不是用戶所考慮的問題,Ⅴ屬于系統(tǒng)的物理設(shè)計(jì)階段,Ⅲ屬于系統(tǒng)運(yùn)行與維護(hù)階段所考慮的問題。
    20數(shù)據(jù)庫(kù)概念設(shè)計(jì)是面向企業(yè)或組織中的數(shù)據(jù)需求的。下列有關(guān)概念模型設(shè)計(jì)的說法中,錯(cuò)誤的是(  )。
    A.按照具有相同屬性特征原則對(duì)客觀事物進(jìn)行分類,在分類的基礎(chǔ)上概括命名,得到實(shí)體集
    B.分析和定義實(shí)體集中的每一個(gè)實(shí)例,并用有意義的符號(hào)或文字分別描述它們
    C.從一個(gè)聯(lián)系的兩端(兩個(gè)方向)確定實(shí)體集之間聯(lián)系的基數(shù),并把聯(lián)系的基數(shù)標(biāo)注在模型中
    D.要保證一個(gè)實(shí)體集中定義的每一個(gè)屬性有意義、不重名
    參考答案:B
    參考解析:答案B是對(duì)實(shí)體集命名,即在標(biāo)識(shí)實(shí)體集的基礎(chǔ)上分類抽象,將具有相同屬性特征的同類對(duì)象抽象為實(shí)體集,然后歸納整理,用一個(gè)有意義的名詞或名詞短語為每一個(gè)實(shí)體命名。它的描述是實(shí)體集中的每一個(gè)實(shí)例,所以錯(cuò)誤。
    21設(shè)某數(shù)據(jù)庫(kù)中有學(xué)生表(學(xué)號(hào),姓名,所在系)和選課表(學(xué)號(hào),課程號(hào),成績(jī))。現(xiàn)要查詢沒選課的學(xué)生姓名和所在系。下列語句中能夠?qū)崿F(xiàn)該查詢要求的是(  )。
    A.SELECT姓名,所在系FROM學(xué)生表a LEFT JOIN選課表b
    ON a.學(xué)號(hào)=b.學(xué)號(hào)WHERE a.學(xué)號(hào)IS NULLB.SELECT姓名,所在系FROM學(xué)生表a LEFT JOIN選課表b
    ON a.學(xué)號(hào)=b.學(xué)號(hào)WHERE b.學(xué)號(hào)IS NULLC.SELECT姓名,所在系FROM學(xué)生表a RIGHT JOIN選課表b
    ON a.學(xué)號(hào)=b.學(xué)號(hào)WHERE a.學(xué)號(hào)IS NULLD.SELECT姓名,所在系FROM學(xué)生表a RIGHT JOIN選課表b
    ON a.學(xué)號(hào)=b.學(xué)號(hào)WHERE b.學(xué)號(hào)IS NULL
    參考答案:B
    參考解析:從數(shù)據(jù)庫(kù)中查出沒有選課的學(xué)生姓名和所在系,則在學(xué)生表中查出選課表中沒有的學(xué)生即可。在這里采用LEFT JOIN來連接查詢。并且要求選課表中的學(xué)生學(xué)號(hào)為NULL。
    22關(guān)于并行數(shù)據(jù)庫(kù),下列說法錯(cuò)誤的是(  )。
    A.層次結(jié)構(gòu)可以分為兩層,頂層是無共享結(jié)構(gòu),底層是共享內(nèi)存或共享磁盤結(jié)構(gòu)
    B.無共享結(jié)構(gòu)通過小化共享資源來降低資源競(jìng)爭(zhēng),因此具有很高的可擴(kuò)展性,適合于OLTP應(yīng)用
    C.并行數(shù)據(jù)庫(kù)系統(tǒng)經(jīng)常通過負(fù)載均衡的方法來提高數(shù)據(jù)庫(kù)系統(tǒng)的業(yè)務(wù)吞吐率
    D.并行數(shù)據(jù)庫(kù)系統(tǒng)的主要目的是實(shí)現(xiàn)場(chǎng)地自治和數(shù)據(jù)全局透明共享
    參考答案:D
    參考解析:并行數(shù)據(jù)庫(kù)系統(tǒng)的主要目的是通過高速通信介質(zhì)連接多個(gè)可獨(dú)立處理的單元以并行執(zhí)行的方式完成對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的互聯(lián)查詢、內(nèi)部查詢及各種內(nèi)部操作。分布式數(shù)據(jù)庫(kù)系統(tǒng)的主要目的才是實(shí)現(xiàn)場(chǎng)地自治和數(shù)據(jù)全局透明共享。
    23某跨國(guó)公司的業(yè)務(wù)系統(tǒng)需要提供全球性服務(wù),該業(yè)務(wù)系統(tǒng)需要24小時(shí)×7天在線服務(wù),系統(tǒng)業(yè)務(wù)繁忙,為了保證業(yè)務(wù)系統(tǒng)中數(shù)據(jù)庫(kù)數(shù)據(jù)的安全,需要設(shè)計(jì)與實(shí)施數(shù)據(jù)轉(zhuǎn)儲(chǔ)機(jī)制,設(shè)計(jì)完成該數(shù)據(jù)庫(kù)每天數(shù)據(jù)增量的轉(zhuǎn)儲(chǔ)需要2個(gè)小時(shí),在不考慮成本因素的情況下,下列合理的是(  )。
    A.配備高性能數(shù)據(jù)庫(kù)服務(wù)器,通過事務(wù)傳送機(jī)制實(shí)時(shí)地將數(shù)據(jù)庫(kù)中的任何變化反映到備份環(huán)境中
    B.每天劃出長(zhǎng)度為2小時(shí)的時(shí)間窗口tw,在tw內(nèi)采用靜態(tài)轉(zhuǎn)儲(chǔ)方法實(shí)現(xiàn)每天數(shù)據(jù)增量的轉(zhuǎn)儲(chǔ)
    C.每天劃出長(zhǎng)度為2小時(shí)的時(shí)間窗口tw,在tw內(nèi)采用動(dòng)態(tài)轉(zhuǎn)儲(chǔ)方法實(shí)現(xiàn)每天數(shù)據(jù)增量的轉(zhuǎn)儲(chǔ)
    D.每周做完全轉(zhuǎn)儲(chǔ),每天選擇浮動(dòng)時(shí)間段對(duì)變化的數(shù)據(jù)進(jìn)行轉(zhuǎn)儲(chǔ)
    參考答案:A
    參考解析:在靜態(tài)轉(zhuǎn)儲(chǔ)過程中系統(tǒng)不能運(yùn)行其他事務(wù),因?yàn)闀?huì)降低數(shù)據(jù)庫(kù)的可用性;動(dòng)態(tài)備份運(yùn)行轉(zhuǎn)儲(chǔ)操作和用戶事務(wù)并發(fā)執(zhí)行,即允許在轉(zhuǎn)儲(chǔ)過程中對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取和修改,動(dòng)態(tài)儲(chǔ)存雖然克服了靜態(tài)儲(chǔ)存的一些缺點(diǎn),但是動(dòng)態(tài)轉(zhuǎn)儲(chǔ)可能造成數(shù)據(jù)庫(kù)的不一致性,使數(shù)據(jù)的有效性得不到保證。為了數(shù)據(jù)的有效性,需要引入日志文件,用它記錄轉(zhuǎn)出期問各種事務(wù)對(duì)數(shù)據(jù)庫(kù)的修改活動(dòng)記錄,然后使用動(dòng)態(tài)轉(zhuǎn)儲(chǔ)的備份副本加上日志文件就可以將數(shù)據(jù)庫(kù)恢復(fù)到某一時(shí)刻的正確狀態(tài),因此8、c不合適。D中完全轉(zhuǎn)儲(chǔ)加增量轉(zhuǎn)儲(chǔ),在這種轉(zhuǎn)儲(chǔ)方式下,恢復(fù)中使用的轉(zhuǎn)儲(chǔ)文件較多,其中任何轉(zhuǎn)儲(chǔ)出了問題都會(huì)導(dǎo)致恢復(fù)失敗,同時(shí)恢復(fù)時(shí)間長(zhǎng),因此D也不可取。
    24在大型企業(yè)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中,聯(lián)機(jī)事務(wù)處理(OLTP)和聯(lián)機(jī)分析處理(OLAP)是常見的數(shù)據(jù)管理與數(shù)據(jù)分析形式。關(guān)于OLTP和OLAP,一般情況下,下列說法正確的是(  )。
    A.OLTP系統(tǒng)的安全性要求比OLAP系統(tǒng)的低,也比較容易實(shí)現(xiàn)
    B.OLAP系統(tǒng)在訪問數(shù)據(jù)時(shí),一般以訪問少量記錄為主,OLTP系統(tǒng)則相反
    C.OLTP要求系統(tǒng)必須具有很高的響應(yīng)速度,而OLAP對(duì)系統(tǒng)響應(yīng)速度的要求較為寬松
    D.OLTP系統(tǒng)一般由企業(yè)的中上層或決策層使用,而OLAP系統(tǒng)一般由企業(yè)的中下層業(yè)務(wù)人員使用
    參考答案:C
    參考解析:OLTP是對(duì)數(shù)據(jù)庫(kù)聯(lián)機(jī)的日常操作,通常是對(duì)一條記錄的查詢和修改,要求快速響應(yīng)用戶的請(qǐng)求,對(duì)數(shù)據(jù)的安全性、完整性及事物吞吐量要求很高。而0LAP是對(duì)數(shù)據(jù)的查詢和分析操作,通常是對(duì)海量歷史數(shù)據(jù)的查詢和分析,要訪問的數(shù)據(jù)量非常大,查詢和分析操作十分復(fù)雜。所以A、B錯(cuò)。又因?yàn)镺LAP為宏觀分析,OLTP為微觀操作,所以前者面向中上層和決策者使用,而后者面向企業(yè)的中下層業(yè)務(wù)人員使用。所以D錯(cuò)。因此選C。
    25當(dāng)數(shù)據(jù)庫(kù)系統(tǒng)出現(xiàn)故障時(shí),可以通過數(shù)據(jù)庫(kù)日志文件進(jìn)行恢復(fù)。下列關(guān)于數(shù)據(jù)庫(kù)日志文件的說法,錯(cuò)誤的是(  )。
    A.數(shù)據(jù)庫(kù)出現(xiàn)事務(wù)故障和系統(tǒng)故障時(shí)需使用日志文件進(jìn)行恢復(fù)
    B.使用動(dòng)態(tài)轉(zhuǎn)儲(chǔ)機(jī)制時(shí),必須使用日志文件才能將數(shù)據(jù)庫(kù)恢復(fù)到一致狀態(tài)
    C.在OLTP系統(tǒng)中,數(shù)據(jù)文件的空間使用量比日志文件大得多,使用日志備份可以降低數(shù)據(jù)庫(kù)的備份空間
    D.日志文件的格式主要有以記錄為單位的日志文件和以數(shù)據(jù)塊為單位的日志文件兩種
    參考答案:C
    參考解析:數(shù)據(jù)文件的空間使用量未必比日志文件大,因?yàn)槿罩臼强焖僭鲩L(zhǎng)的。此外,使用日志備份并不能降低數(shù)據(jù)庫(kù)的備份空間。所以選C。
    26在進(jìn)行數(shù)據(jù)庫(kù)性能調(diào)優(yōu)過程中,需要考慮數(shù)據(jù)庫(kù)系統(tǒng)軟件、硬件配置、網(wǎng)絡(luò)環(huán)境等多方面因素。下列有關(guān)性能調(diào)優(yōu)的說法,錯(cuò)誤的是(  )。
    A.修改某些頻繁使用的SQL語句,提高其性能,可能會(huì)大幅度降低數(shù)據(jù)庫(kù)CPU使用率
    B.隨著服務(wù)器CPU處理能力提高、內(nèi)存容量增大,現(xiàn)階段數(shù)據(jù)庫(kù)性能優(yōu)化一般以更換服務(wù)器硬件為主要調(diào)優(yōu)手段
    C.當(dāng)數(shù)據(jù)庫(kù)服務(wù)器磁盤I0出現(xiàn)寫瓶頸時(shí),可以考慮使用高速磁盤存儲(chǔ)常用數(shù)據(jù),低速磁盤存儲(chǔ)不常用數(shù)據(jù)
    D.索引可以提高某些查詢的速度,但也可能降低寫入速度,同時(shí)也會(huì)增加磁盤空間使用
    參考答案:B
    參考解析:增強(qiáng)硬件配置是一種方法,但我們平時(shí)遇到的多的問題是如何在無法增強(qiáng)硬件配置的情況下將數(shù)據(jù)庫(kù)性能優(yōu)化,因此在實(shí)際應(yīng)用過程中,數(shù)據(jù)庫(kù)本身的優(yōu)化占的比重很大,而且優(yōu)化效果也明顯。
    27以下關(guān)于事務(wù)調(diào)度的說法錯(cuò)誤的是(  )。
    A.調(diào)度分為串行調(diào)度和并發(fā)調(diào)度
    B.串行調(diào)度的特點(diǎn)是一個(gè)事務(wù)的所有操作都執(zhí)行完后才開始執(zhí)行另一個(gè)事務(wù)
    C.多個(gè)事務(wù)的調(diào)度必須保持每個(gè)事務(wù)的操作在事務(wù)中的執(zhí)行順序不變
    D.并發(fā)調(diào)度中不同事務(wù)的操作不可以交叉執(zhí)行
    參考答案:D
    參考解析:事務(wù)是構(gòu)成數(shù)據(jù)庫(kù)應(yīng)用中一個(gè)獨(dú)立邏輯工作單元的操作的集合,也是訪問并可能更新數(shù)據(jù)庫(kù)中各種數(shù)據(jù)項(xiàng)的一個(gè)程序執(zhí)行單元。數(shù)據(jù)庫(kù)系統(tǒng)通過執(zhí)行各種事務(wù)實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的操作,管理和執(zhí)行事務(wù)是DBMS的基本功能。事務(wù)的四大特性為:①原子性;②一致性;③隔離性;④持久性。事務(wù)調(diào)度則是為了保證事務(wù)的此四大特性。調(diào)度分為串行調(diào)度和并發(fā)調(diào)度。串行調(diào)度的特點(diǎn)是一個(gè)事務(wù)的所有操作都執(zhí)行完后才開始執(zhí)行另一事務(wù),不存在事務(wù)操作的交叉執(zhí)行;不同事務(wù)操作的交叉執(zhí)行稱為并發(fā)調(diào)度,DBMS交叉執(zhí)行來自多個(gè)事務(wù)的各個(gè)操作,以提高數(shù)據(jù)庫(kù)系統(tǒng)的性能。并發(fā)調(diào)度中不同的事務(wù)的操作可以交叉執(zhí)行。
    28設(shè)有某電子商務(wù)平臺(tái),該平臺(tái)業(yè)務(wù)繁忙。為實(shí)現(xiàn)面向用戶的精確營(yíng)銷,提高向用戶推薦商品的成功率,需要建立數(shù)據(jù)倉(cāng)庫(kù)系統(tǒng),并將數(shù)據(jù)倉(cāng)庫(kù)作為數(shù)據(jù)挖掘應(yīng)用程序的數(shù)據(jù)源。設(shè)電子商務(wù)平臺(tái)的OLTP環(huán)境中有銷售數(shù)據(jù)表Tl和用戶信息表T2。數(shù)據(jù)倉(cāng)庫(kù)用表T3保存近5年的銷售細(xì)節(jié)數(shù)據(jù),同時(shí)有用戶信息表T4和用戶商品推薦表T5。下列方案一般情況下為合理的是(  )。
    A.實(shí)時(shí)更新T3,即每產(chǎn)生一條銷售記錄,就將該記錄同時(shí)寫到T1和T3中,并觸發(fā)數(shù)據(jù)挖掘程序運(yùn)行,以增加數(shù)據(jù)挖掘結(jié)果的準(zhǔn)確性和實(shí)時(shí)性
    B.當(dāng)一個(gè)銷售事務(wù)完成并生成銷售記錄后,觸發(fā)數(shù)據(jù)挖掘程序在T1上執(zhí)行并得到針對(duì)該用戶的商品推薦列表,然后將商品推薦列表寫到T5中。每隔數(shù)小時(shí)從T1獲取新數(shù)據(jù)批量更新T3
    C.根據(jù)T1的變化實(shí)時(shí)更新T3,每天定時(shí)運(yùn)行數(shù)據(jù)挖掘程序,生成用戶商品推薦列表,并將其寫到T5中
    D.每天根據(jù)T1對(duì)T3做批量更新,數(shù)據(jù)挖掘程序根據(jù)新數(shù)據(jù)生成用戶商品推薦列表,并將其寫到T5中
    參考答案:D
    參考解析:數(shù)據(jù)倉(cāng)庫(kù)是為了構(gòu)建新的分析處理環(huán)境而出現(xiàn)的一種數(shù)據(jù)存儲(chǔ)和組織的新技術(shù)。它的建立能充分利用已有的數(shù)據(jù)資源,把數(shù)據(jù)轉(zhuǎn)換為信息,從中挖掘出知識(shí),終創(chuàng)造出效益。數(shù)據(jù)倉(cāng)庫(kù)有若干基本特征,包括不可更新性和隨時(shí)間變化性。所謂不可更新性就是用戶在提取倉(cāng)庫(kù)中的數(shù)據(jù)進(jìn)行分析時(shí)并不會(huì)同時(shí)對(duì)數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)進(jìn)行更新操作,而數(shù)據(jù)變化性是數(shù)據(jù)倉(cāng)庫(kù)每隔一段時(shí)間進(jìn)行數(shù)據(jù)的更新和處理。綜上可以看出,數(shù)據(jù)倉(cāng)庫(kù)的更新與時(shí)問間隔有關(guān),所以不會(huì)實(shí)時(shí)更新,即排除A、C,又因?yàn)閷?duì)用戶進(jìn)行推薦時(shí)要結(jié)合以往的歷史數(shù)據(jù)而不是僅通過當(dāng)前數(shù)據(jù)分析,即B錯(cuò)。綜上可知,選項(xiàng)D正確。
    29下列關(guān)于分布式數(shù)據(jù)庫(kù)和并行數(shù)據(jù)庫(kù)的說法,正確的是(  )。
    A.為了滿足高并發(fā)業(yè)務(wù)的需要,共享內(nèi)存結(jié)構(gòu)的并行數(shù)據(jù)庫(kù)比較適用于如銀行出納、民航售票等OLTP應(yīng)用
    B.在分布式數(shù)據(jù)庫(kù)的查詢中,導(dǎo)致數(shù)據(jù)傳輸量大的主要原因是數(shù)據(jù)間的連接操作和選擇操作
    C.如果數(shù)據(jù)分布不合理,并行數(shù)據(jù)庫(kù)僅僅依靠多處理器、共享硬件資源等手段是無法實(shí)現(xiàn)真正意義上的并行處理的,也無法使其性能優(yōu)化
    D.與集中式數(shù)據(jù)庫(kù)系統(tǒng)的事務(wù)相比,分布式數(shù)據(jù)庫(kù)系統(tǒng)中只需要一個(gè)場(chǎng)地完成提交即可完成一個(gè)全局事務(wù),這正是分布式數(shù)據(jù)庫(kù)的優(yōu)越之處
    參考答案:C
    參考解析:A中的0LTP應(yīng)用需要進(jìn)行大量的并行事務(wù),因此若采用共享內(nèi)存結(jié)構(gòu)會(huì)引起大量數(shù)據(jù)沖突;B中分布式數(shù)據(jù)庫(kù)查詢中,導(dǎo)致數(shù)據(jù)傳輸量大的原因主要是數(shù)據(jù)間的連接和并操作;D中分布式數(shù)據(jù)庫(kù)因?yàn)椴煌姆制透北?,因此很多時(shí)候在一個(gè)場(chǎng)地完成提交不能完成全局事務(wù),如雖完成某片數(shù)據(jù)更新,卻并沒有完成全局?jǐn)?shù)據(jù)更新。
    30日志文件對(duì)實(shí)現(xiàn)數(shù)據(jù)庫(kù)系統(tǒng)故障的恢復(fù)有非常重要的作用。下列關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)日志文件的說法,正確的是(  )。
    A.數(shù)據(jù)庫(kù)系統(tǒng)不要求日志的寫入順序必須與并行事務(wù)執(zhí)行的時(shí)間次序一致
    B.為了保證數(shù)據(jù)庫(kù)是可恢復(fù)的,必須嚴(yán)格保證先寫數(shù)據(jù)庫(kù)后寫日志
    C.日志文件中檢查點(diǎn)記錄的主要作用是提高系統(tǒng)出現(xiàn)故障后的恢復(fù)效率
    D.系統(tǒng)故障恢復(fù)必須使用日志文件以保證數(shù)據(jù)庫(kù)系統(tǒng)重啟時(shí)能正常恢復(fù),事務(wù)故障恢復(fù)不一定需要使用日志文件
    參考答案:C
    參考解析:A日志寫入順序必須和并行事務(wù)執(zhí)行的時(shí)間次序一致,因?yàn)檫@樣才能在數(shù)據(jù)庫(kù)恢復(fù)時(shí)進(jìn)行red0和und0操作,從而保證數(shù)據(jù)的一致性而不會(huì)產(chǎn)生臟數(shù)據(jù);B必須先寫日志再寫數(shù)據(jù)庫(kù),這樣當(dāng)數(shù)據(jù)庫(kù)發(fā)生故障時(shí)可以根據(jù)日志完全恢復(fù),否則如果先寫數(shù)據(jù),當(dāng)數(shù)據(jù)剛寫完時(shí),數(shù)據(jù)庫(kù)故障而沒來得及寫日志,導(dǎo)致數(shù)據(jù)恢復(fù)時(shí)發(fā)生錯(cuò)誤。D事務(wù)恢復(fù)時(shí)同樣需要日志,如red0、und0操作。所以選C。
    二、應(yīng)用題
    31數(shù)據(jù)庫(kù)管理系統(tǒng)為三級(jí)模式結(jié)構(gòu)提供了兩層映像機(jī)制,其中模式/內(nèi)模式映像提供了【1】獨(dú)立性。
    參考解析:
    物理
    【解析】數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式結(jié)構(gòu)是由外模式、模式和內(nèi)模式三級(jí)構(gòu)成。模式也稱邏輯模式,是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征描述,是所有用戶的公共數(shù)據(jù)視圖,它是數(shù)據(jù)庫(kù)系統(tǒng)的中間層。外模式是數(shù)據(jù)庫(kù)用戶能夠看見和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征描述,是數(shù)據(jù)庫(kù)用戶的數(shù)據(jù)視圖。內(nèi)模式是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述,是數(shù)據(jù)在數(shù)據(jù)庫(kù)內(nèi)部的表示方式。為了能夠在系統(tǒng)內(nèi)部實(shí)現(xiàn)這3個(gè)抽象層次的聯(lián)系和轉(zhuǎn)換,數(shù)據(jù)庫(kù)管理系統(tǒng)在這三級(jí)模式之間提供了兩層映像:外模式/模式映像、模式/內(nèi)模式映像。這兩層映像分別保證了數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能夠具有較高的邏輯獨(dú)立性和物理獨(dú)立性。
    32按照數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)生命周期模型,系統(tǒng)設(shè)計(jì)階段細(xì)分為概念設(shè)計(jì)、【2】設(shè)計(jì)和物理設(shè)計(jì)三個(gè)步驟。
    參考解析:
    邏輯
    【解析】系統(tǒng)設(shè)計(jì)階段分為概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)。概念設(shè)計(jì)是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵,它通過對(duì)用戶需求進(jìn)行綜合、歸納與抽象,形成一個(gè)獨(dú)立于具體DBMS的概念模型。邏輯設(shè)計(jì)是將概念結(jié)構(gòu)轉(zhuǎn)換為某個(gè)DBMS所支持的數(shù)據(jù)模型,并對(duì)其進(jìn)行優(yōu)化。物理設(shè)計(jì)是為邏輯數(shù)據(jù)模型選取一個(gè)適合應(yīng)用環(huán)境的物理結(jié)構(gòu)。
    33設(shè)用UML設(shè)計(jì)某數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng),設(shè)計(jì)人員規(guī)劃了一組應(yīng)用程序集,該集合由動(dòng)態(tài)鏈接庫(kù)和可執(zhí)行程序構(gòu)成。為了展現(xiàn)這些應(yīng)用程序集間的組織和依賴關(guān)系,以對(duì)源代碼、可執(zhí)行程序的發(fā)布等進(jìn)行系統(tǒng)建模,應(yīng)采用的UML圖是【3】圖。
    參考解析:組件
    【解析】組件圖提供系統(tǒng)的物理視圖。UML圖形中組件圖的用途是顯示系統(tǒng)中的軟件對(duì)其他軟件組件(例如,庫(kù)函數(shù))的依賴關(guān)系,它可以在一個(gè)非常高的層次上顯示,從而僅顯示粗粒度的組件,也可以在組件包層次上顯示。
    34設(shè)有學(xué)生表(學(xué)號(hào),姓名,所在系名)和選課表(學(xué)號(hào),課程號(hào),成績(jī))?,F(xiàn)要建立統(tǒng)計(jì)每個(gè)系選課人數(shù)的視圖。請(qǐng)補(bǔ)全下列語句:
    CREATE VIEW Vl(系名,人數(shù))AsSELECT所在系名,【4】
    FROM選課表JOIN學(xué)生表ON選課表.學(xué)號(hào)=學(xué)生表.學(xué)號(hào)【5】
    參考解析:
    第一空:COUNT(DISTINCT選課表.學(xué)號(hào))
    第二空:GROUP BY所在系名
    【解析】由于要統(tǒng)計(jì)選課人數(shù)所以要用到聚類函數(shù)COUNT(DISTINCTI ALL<列名>),表示對(duì)某列的值的計(jì)數(shù),如果指定DISTINCT短語,則表示在計(jì)算時(shí)要取消指定列中的重復(fù)值。如果不指定DISTINCT短語或指定ALL短語,則表示保留重復(fù)值。由于是對(duì)不同系中的學(xué)生的學(xué)號(hào)統(tǒng)計(jì),所以用GROUP BY子句將查詢結(jié)果按某一列或多列的值分組,值相等的為一組。通過對(duì)組內(nèi)不同學(xué)號(hào)的統(tǒng)計(jì)從而統(tǒng)計(jì)出各個(gè)系的選課人數(shù)。
    35設(shè)有課程表(課程號(hào),課程名,學(xué)分,先修課程號(hào)),已知某應(yīng)用程序需要列出“數(shù)據(jù)庫(kù)原理”課程的一門先修課程,查詢結(jié)果要求輸出(課程名,學(xué)分,先修課名稱,先修課學(xué)分),可以用【6】連接操作在一個(gè)查詢中實(shí)現(xiàn)此功能。
    參考解析:自
    【解析】自連接是SQL語句中經(jīng)常要用的連接方式,使用自連接可以將自身表的一個(gè)鏡像當(dāng)作另一張表來對(duì)待,從而能夠得到一些特殊的數(shù)據(jù)。簡(jiǎn)而言之,自連接的本意就是將一張表看成多張表來做連接。本題的SQL語句為:
    select課程表.課程名,課程表.學(xué)分,先修表.課程名,先修表.學(xué)分from emp課程表,emp先修表where課程表.課程名=’數(shù)據(jù)庫(kù)原理’and課程表.先修課程號(hào)=先修表.課程號(hào)。
    36在SQL Server 2008的某用戶數(shù)據(jù)庫(kù)中,設(shè)有T表,現(xiàn)要在T表的c1列和c2列上建立一個(gè)復(fù)合聚集索引,其中c1列值重復(fù)率為20%,c2列為l0%。請(qǐng)補(bǔ)全下列語句建立一個(gè)性能優(yōu)的索引:CREATE UNIQUE CLUSTERED INDEX Idxl ON T(【7】)
    參考解析:c2,c1
    【解析】聚簇索引是指索引項(xiàng)的順序與表中記錄的物理順序一致的索引組織。用戶可以在經(jīng)常查詢的列上建立聚簇索引以提高查詢效率。UNIQUE表示要建立的每一個(gè)索引值對(duì)應(yīng)的數(shù)據(jù)記錄,先對(duì)c2表索引然后對(duì)cl表索引,可以使索引的性能優(yōu)。
    37在SQL Server 2008中,現(xiàn)要將T1表的C1列(int類型)定義為標(biāo)識(shí)列,初值和增量值均為1。請(qǐng)補(bǔ)全下列語句:
    CREATE TABLE T1(clint【8】(1,1),…)
    參考解析:IDENTITY
    【解析】此題考查了SQL SERVER中的identity用法。在數(shù)據(jù)庫(kù)中,常用的一個(gè)流水編號(hào)通常會(huì)使用i-dentity欄位來進(jìn)行設(shè)置,這種編號(hào)的好處是不會(huì)重復(fù),而且是的,這對(duì)table中的值特性很重要,通常用來做客戶編號(hào)、訂單編號(hào)等。此處用IDENTITY作約束性定義,使C1可以成為標(biāo)識(shí)列。
    38在SQL Server 2008中,設(shè)ul是SQL Server身份驗(yàn)證模式的數(shù)據(jù)庫(kù)服務(wù)器登錄賬戶,現(xiàn)希望U1在該數(shù)據(jù)庫(kù)服務(wù)器上具有系統(tǒng)管理員權(quán)限。請(qǐng)補(bǔ)全下列語句:
    EXEC sp-addsrvrolememberˊU1ˊ,ˊ【9】ˊ
    參考解析:sysadmin
    【解析】EXEC sp_addsrvrolemember是登錄賬戶角色,sp_addsrvrolemember是定義好的存儲(chǔ)過程,其作用是為登錄賬戶賦角色權(quán)限。數(shù)據(jù)庫(kù)主要的角色及權(quán)限如下表所示:bulkadmin執(zhí)行BULK INSERT語句
    dbcreator創(chuàng)建、修改、刪除和還原數(shù)據(jù)庫(kù)
    diskadmin管理磁盤文件
    processadmin管理在SQL Server實(shí)例中運(yùn)行的進(jìn)程
    securityadmin管理服務(wù)器登錄賬戶
    serveradmin配置服務(wù)器范圍的設(shè)置
    setupadmin添加和刪除鏈接服務(wù)器
    sysadmin在SQL Server中進(jìn)行任何活動(dòng),該角色的權(quán)限跨越所有其它固定服務(wù)器角色
    39數(shù)據(jù)庫(kù)管理系統(tǒng)中的加鎖協(xié)議規(guī)定了事務(wù)的加鎖時(shí)間、持鎖時(shí)間和釋放鎖時(shí)間,其中【10】協(xié)議可以完全保證并發(fā)事務(wù)數(shù)據(jù)的一致性。
    參考解析:三級(jí)加鎖
    【解析】三級(jí)加鎖協(xié)議也稱為三級(jí)封鎖協(xié)議.,它保證正確地調(diào)度事務(wù)的并發(fā)操作,是事務(wù)對(duì)數(shù)據(jù)庫(kù)對(duì)象加鎖、解鎖必須遵守的一種規(guī)則。在運(yùn)用x鎖和s鎖對(duì)數(shù)據(jù)對(duì)象加鎖時(shí),還需要約定一些規(guī)則,例如何時(shí)申請(qǐng)x鎖或S鎖、持鎖時(shí)間、何時(shí)釋放等。
    40在數(shù)據(jù)庫(kù)系統(tǒng)出現(xiàn)系統(tǒng)故障后進(jìn)行恢復(fù)時(shí),對(duì)于事務(wù)T,如果日志文件中有BEGIN TRANSACTION記錄,而沒有COMMIT或ROLLBACK記錄,則數(shù)據(jù)庫(kù)管理系統(tǒng)處理這種事務(wù)時(shí)應(yīng)執(zhí)行的操作是【11】。
    參考解析:UNDO
    【解析】系統(tǒng)故障造成數(shù)據(jù)庫(kù)狀態(tài)不一致的原因有兩個(gè),一是未完成的事務(wù)對(duì)數(shù)據(jù)庫(kù)的更新可能已寫入數(shù)據(jù)庫(kù),二是已提交事務(wù)對(duì)數(shù)據(jù)庫(kù)的更新可能還留在緩沖區(qū)沒來的及寫入數(shù)據(jù)庫(kù)。對(duì)于故障發(fā)生前已提交的事務(wù)(既有BEGIN Transaction,又有commit)做red0操作,對(duì)于故障發(fā)生時(shí)尚未完成的事務(wù)(只有BEGINTransaction,而沒有commit或rollback)做und0操作。
    41在動(dòng)態(tài)轉(zhuǎn)儲(chǔ)中,利用轉(zhuǎn)儲(chǔ)文件只能將數(shù)據(jù)庫(kù)恢復(fù)到轉(zhuǎn)儲(chǔ)過程中的某個(gè)狀態(tài),且轉(zhuǎn)儲(chǔ)文件中的數(shù)據(jù)可能不一致,只有和【12】文件綜合起來使用,才能將數(shù)據(jù)庫(kù)恢復(fù)到一致狀態(tài)。
    參考解析:日志
    【解析】數(shù)據(jù)轉(zhuǎn)儲(chǔ)是數(shù)據(jù)庫(kù)恢復(fù)中采用的基本技術(shù)。所謂轉(zhuǎn)儲(chǔ)即DBA定期地將整個(gè)數(shù)據(jù)庫(kù)復(fù)制到磁帶或另一個(gè)磁盤上保存起來的過程。動(dòng)態(tài)轉(zhuǎn)儲(chǔ)是指在轉(zhuǎn)儲(chǔ)過程期間允許對(duì)數(shù)據(jù)庫(kù)進(jìn)行存取或修改,即轉(zhuǎn)儲(chǔ)和用戶事務(wù)可并發(fā)執(zhí)行,但在轉(zhuǎn)儲(chǔ)數(shù)據(jù)后,副本上的數(shù)據(jù)并不能保證正確有效,為此必須把轉(zhuǎn)儲(chǔ)期間各事務(wù)對(duì)數(shù)據(jù)庫(kù)的修改活動(dòng)登記下來,建立日志文件。
    42通常數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)機(jī)制有三種,分別是完全轉(zhuǎn)儲(chǔ)、差量轉(zhuǎn)儲(chǔ)和【13】轉(zhuǎn)儲(chǔ)。
    參考解析:增量
    【解析】數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)機(jī)制一般有完全轉(zhuǎn)儲(chǔ)、差量轉(zhuǎn)儲(chǔ)和增量轉(zhuǎn)儲(chǔ)三種。完全轉(zhuǎn)儲(chǔ)是指對(duì)整個(gè)數(shù)據(jù)庫(kù)中的數(shù)據(jù)全部重新備份,效率低,時(shí)問長(zhǎng);差量轉(zhuǎn)儲(chǔ)指基于上完全轉(zhuǎn)儲(chǔ)基點(diǎn)之后變化轉(zhuǎn)儲(chǔ),是對(duì)上次轉(zhuǎn)儲(chǔ)之后對(duì)所有文件中修改或刪除的記錄的轉(zhuǎn)儲(chǔ),效率高,時(shí)問短;增量轉(zhuǎn)儲(chǔ)是對(duì)數(shù)據(jù)庫(kù)中凡是有記錄變化的文件的整個(gè)文件進(jìn)行復(fù)制,效率介于前兩種轉(zhuǎn)儲(chǔ)方式之間。
    43數(shù)據(jù)倉(cāng)庫(kù)是面向主題的、【14】的、非易失的、隨時(shí)間變化的數(shù)據(jù)集合,用來支持管理人員的決策。
    參考解析:集成
    【解析】數(shù)據(jù)倉(cāng)庫(kù)是為了構(gòu)建新的分析處理環(huán)境而出現(xiàn)的一種數(shù)據(jù)存儲(chǔ)和組織技術(shù),基本特征包括:數(shù)據(jù)是面向主題的、集成的、非易失的、隨時(shí)間不斷變化的數(shù)據(jù)集合,用來支持管理人員的決策。
    44在數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)和建設(shè)過程中,設(shè)計(jì)者需要調(diào)查用戶的決策或數(shù)據(jù)處理需求,并將功能相近且需要相關(guān)聯(lián)數(shù)據(jù)支持的需求進(jìn)行歸類,得到不同的需求集合,并在企業(yè)數(shù)據(jù)模型中尋找能夠滿足各個(gè)需求集合的數(shù)據(jù)集合,然后針對(duì)各個(gè)數(shù)據(jù)集合開展數(shù)據(jù)倉(cāng)庫(kù)數(shù)據(jù)模型的設(shè)計(jì)。這種設(shè)計(jì)方法稱為【15】的設(shè)計(jì)方法。
    參考解析:面向主題
    【解析】面向主題的數(shù)據(jù)組織方式,就是在較高層次上對(duì)分析對(duì)象數(shù)據(jù)的一個(gè)完整并且一致的描述,能刻畫各個(gè)分析對(duì)象所涉及的企業(yè)各項(xiàng)數(shù)據(jù),以及數(shù)據(jù)之間的聯(lián)系。所謂較高層次是相對(duì)面向應(yīng)用的數(shù)據(jù)組織方式而言的,即按照主題進(jìn)行數(shù)據(jù)組織的方式具有更高的數(shù)據(jù)抽象級(jí)別。與傳統(tǒng)數(shù)據(jù)庫(kù)面向應(yīng)用進(jìn)行數(shù)據(jù)組織的特點(diǎn)相對(duì)應(yīng),數(shù)據(jù)倉(cāng)庫(kù)中的數(shù)據(jù)面向主題進(jìn)行組織。例如,一個(gè)生產(chǎn)企業(yè)的數(shù)據(jù)倉(cāng)庫(kù)所組織的主題可能有產(chǎn)品訂貨分析和貨物發(fā)運(yùn)分析等。
    三、設(shè)計(jì)與應(yīng)用題
    45某書店采用了SQL Server 2008數(shù)據(jù)庫(kù)管理系統(tǒng),該書店有一個(gè)需求,需要統(tǒng)計(jì)指定年份中每一本書的銷售總額,例如:查詢2012年所有書的銷售總額。
    已知圖書結(jié)構(gòu)如下:
    圖書表(書號(hào)BOOK_ID,書名BOOK_NAME,單價(jià)BOOK_PRICE)
    銷售表(書號(hào)BOOK_ID,銷售時(shí)間SALE_TIME,銷售數(shù)量SALE_NUM)。
    假設(shè)單價(jià)和銷售數(shù)量均為int型,書號(hào)和書名均為varchar(50)類型,銷售時(shí)問為datetime型。請(qǐng)給出滿足如下要求的多語句表值函數(shù),該函數(shù)統(tǒng)計(jì)指定年份中每本書的銷售總額。(10分)設(shè)函數(shù)名為:BOOK_PROFIT(@year int),函數(shù)的返回結(jié)果格式如下:
    書號(hào)銷售總額
    B001 60000
    A004 50000
    參考解析:
    【解題思路】
    采用JOIN聯(lián)合查詢,先用WHERE條件查出符合銷售時(shí)間=@year的記錄,再將找出的記錄和圖書表合并,并采用單價(jià)*銷售數(shù)量計(jì)算出聯(lián)合查詢的表數(shù)據(jù),后根據(jù)GROUP BY統(tǒng)計(jì)每種書的銷售價(jià)格總和。
    【參考答案】
    CREATE FUNCTION BOOK_PROFIT(@year int)
    RETURNS@f_BOOK_PROFIT table(
    書號(hào)varchar(50),
    銷售總額int)
    AS
    BEGIN
    INSERT INTO@f_BOOK_PROFIT
    SELECT a書號(hào),SUM(a單價(jià)*b銷售數(shù)量)
    FROM圖書表a JOIN銷售表b ON a書號(hào)=b書號(hào)
    WHERE year(b銷售時(shí)間)=@year
    GROUP BY a.書號(hào)
    RETURN
    END
    或者
    CREATE FUNCTION BOOK_PROFIT(@year int)
    RETURNS@f_BOOK_PROFlT table(
    BOOK_ID varchar(50),
    PROFIT int)
    AS
    BEGIN
    INSERT INTO@f_BOOK_PROFIT
    SELECT a.BOOK_ID,SUM(a.BOOK_PRICE*b,SALE_NUM)
    FROM BOOK a JOIN SALE b ON a.BOOK ID=b.B00K ID
    WHERE year(bSALE_TIME)=@year
    GROUP BY a.BOOK_ID
    RETURN
    END
    46某商場(chǎng)商品經(jīng)營(yíng)管理系統(tǒng)使用SQL Server 2008數(shù)據(jù)庫(kù)管理系統(tǒng),此系統(tǒng)上線運(yùn)行1年后,業(yè)務(wù)人員使用某統(tǒng)計(jì)功能(此功能每月使用)時(shí)發(fā)現(xiàn)速度很慢。該統(tǒng)計(jì)功能主要執(zhí)行的SQL語句如下:
    SELECT商品號(hào),SUM(銷售數(shù)量*銷售價(jià)格)銷售額
    FROM銷售明細(xì)
    GROUP BY商品號(hào);
    該銷售明細(xì)表的建表語句如下:
    CREATE TABLE銷售明細(xì)(
    序列號(hào)intIDENTITY(1,1)NOT NULL,
    商品號(hào)intNOT NULL,
    銷售日期datetime NULL,
    銷售數(shù)量intNOT NULL,
    銷售價(jià)格intNOT NULL
    );
    并在銷售明細(xì)表上建有如下索引:
    CREATE index ix_銷售明細(xì)_商品號(hào)on銷售明細(xì)(商品號(hào));
    某技術(shù)人員提出通過執(zhí)行下述語句以提高此查詢的運(yùn)行效率:
    CREATE VIEW商品銷售額視圖
    WITH SCHEMABINDING
    AS
    SELECT商品號(hào),SUM(銷售數(shù)量*銷售價(jià)格)銷售額,
    COUNT_BIG(*)cnt
    FROM db0.銷售明細(xì)
    GROUP BY商品號(hào);
    CREATE UNIQUE CLUSTERED INDEX ix_商品銷售額
    ON商品銷售額視圖(商品號(hào));
    (1)請(qǐng)分析該技術(shù)人員給出的語句功能以及對(duì)原有查詢語句的性能影響,并給出原因。
    (2)此商場(chǎng)的銷售量很大,每天有大量數(shù)據(jù)插入到銷售明細(xì)表中。請(qǐng)從數(shù)據(jù)庫(kù)整體性能角度分析,此技術(shù)人員提出的優(yōu)化方法是否合適,并給出原因。
    參考解析:
    (1)【解題思路】
    該技術(shù)人員使用了帶有索引的視圖,將所關(guān)心的數(shù)據(jù)(商品號(hào),銷售額,該商品號(hào)在表中出現(xiàn)的次數(shù))從銷售明細(xì)表中提取出來建立視圖,并對(duì)該視圖建立按商品號(hào)排序的聚簇索引,這樣大大減少了在搜索不同商品的銷售額時(shí)調(diào)用的數(shù)據(jù)表的規(guī)模,從而提高了查詢效率。由于表的數(shù)據(jù)規(guī)模很大,建立該視圖后,同一種商品不會(huì)多次出現(xiàn)在表中,而是通過一個(gè)計(jì)數(shù)變量cnt表示,即在檢索時(shí)大大減少了檢索規(guī)模。創(chuàng)建索引時(shí),UNIQUE關(guān)鍵字表明此索引的每一個(gè)索引值只對(duì)應(yīng)的數(shù)據(jù)記錄。CLUSTER表示要建立的索引是聚簇索引(所謂聚簇索引是指索引項(xiàng)的順序與表中記錄的物理順序一致的索引組織)。
    【參考答案】
    語句功能:建立包含所關(guān)心數(shù)據(jù)(商品號(hào),銷售額,該商品號(hào)在表中出現(xiàn)的次數(shù))的帶索引的視圖,并建立按商品號(hào)對(duì)應(yīng)銷售額UNIQUE聚簇排序的索引,從而大大縮小了查詢語句的查詢范圍,提高了查詢效率。
    原因:視圖中將問接相關(guān)的屬性列(序列號(hào),銷售日期,商品號(hào),銷售數(shù)量,銷售價(jià)格)轉(zhuǎn)換成了目標(biāo)屬性列,減少了搜索空問,同時(shí)建立UNIQUE CLUSTERED索引,使查詢商品號(hào)的數(shù)據(jù)記錄,因此降低了搜索范圍,提高了搜索效率。
    (2)【解題思路】
    由于視圖是不實(shí)際存儲(chǔ)數(shù)據(jù)的虛表,因此對(duì)視圖的更新終要轉(zhuǎn)換為對(duì)基本表的更新。而用戶通過視圖對(duì)數(shù)據(jù)進(jìn)行增加、刪除、修改時(shí),有意或無意地對(duì)不屬于視圖范圍內(nèi)的基本表數(shù)據(jù)進(jìn)行操作,會(huì)破壞數(shù)據(jù)的一致性。而且視圖中的數(shù)據(jù)本身就是冗余的,每次對(duì)表進(jìn)行修改時(shí),同時(shí)也要對(duì)相應(yīng)的視圖進(jìn)行修改,這大大增加了系統(tǒng)的負(fù)擔(dān)。
    【參考答案】不合適,每天大量的插入操作使得在修改表的同時(shí)也要對(duì)視圖進(jìn)行修改,增加了系統(tǒng)的負(fù)擔(dān),然而該統(tǒng)計(jì)功能一個(gè)月才用,這樣導(dǎo)致系統(tǒng)的利用率也較為低下。
    47設(shè)有圖書管理數(shù)據(jù)庫(kù),包含三張表:
    圖書明細(xì)表(圖書編號(hào),圖書類別,圖書名稱,作者,出版社,出版日期,定價(jià));
    讀者表(借書證號(hào),姓名,系別,*日期);
    借出信息表(借出編號(hào),借書證號(hào),圖書編號(hào),借書日期);
    完成下列操作:
    定義一個(gè)多語句表值函數(shù),用于查詢學(xué)生借書情況,只需提供參數(shù):借書證號(hào),就可以通過調(diào)用函數(shù)返回此學(xué)生的借書情況,若有借書籍,則返回所借書籍的編號(hào)、書籍名稱、定價(jià)和借書日期;若沒有在借書籍,則返回記錄為空。設(shè)函數(shù)名為:f_BorrowBook(@jszh char(20))。
    參考解析:
    【解題思路】
    SQL Server 2008多語句表值函數(shù)的格式為:
    CREATE FUNCTION[schema_name.]function_name
    ([{@parameter_name[As][type_schema_name.]parameter data_type
    [=default]}
    [….n]
    ]
    )
    RETURNS@return_variable TABLE
    [AS]
    BEGIN
    function_body
    RETURN
    END
    [;]
    ::=
    ({I}
    [table_constraint][,...n])
    采用三表聯(lián)合查詢,通過傳入的借書證號(hào)查出借出信息表中的圖書編號(hào),然后查出圖書明細(xì)表的信息。
    【參考答案】
    CREATE FUNCTION BorrowBook(@jszh char(20))
    RETURNS@jsqkb TABLE(書籍編號(hào)char(20),書籍名稱char(50),定價(jià)float,借書日期datetime)
    AS
    BEGIN
    INSERT@jsqkb
    SELECT圖書明細(xì)表.圖書編號(hào),圖書名稱,定價(jià),借出信息表.借書日期FROM借出信息表,圖書明細(xì)表
    WHERE借出信息表.圖書編號(hào)=圖書明細(xì)表.圖書編號(hào)AND借出信息表.借書證號(hào)=@jszh
    RETURN
    END