电竞比分网-中国电竞赛事及体育赛事平台

分享

數(shù)據(jù)庫(kù)試題

 hhx2009 2010-01-10
SQL數(shù)據(jù)庫(kù)管理與開(kāi)發(fā)教程與實(shí)訓(xùn)》試題
 
一、單項(xiàng)選擇題(每小題1分,共10)1.下列四項(xiàng)中,不屬于數(shù)據(jù)庫(kù)特點(diǎn)的是(      )。

A.?dāng)?shù)據(jù)共享                     B.數(shù)據(jù)完整性

C. 數(shù)據(jù)冗余很高                 D.數(shù)據(jù)獨(dú)立性高

2. 目前(   )數(shù)據(jù)庫(kù)系統(tǒng)已逐漸淘汰了網(wǎng)狀數(shù)據(jù)庫(kù)和層次數(shù)據(jù)庫(kù),成為當(dāng)今最為流行的商用數(shù)據(jù)庫(kù)系統(tǒng)。

A.關(guān)系         B.面向?qū)ο?span lang=EN-US>    C.分布

3. 數(shù)據(jù)庫(kù)設(shè)計(jì)中的概念結(jié)構(gòu)設(shè)計(jì)的主要工具是(    )。

A.?dāng)?shù)據(jù)模型     BER模型    C.新奧爾良模型   D.概念模型

4.    是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理軟件,它屬于系統(tǒng)軟件,它為用戶或應(yīng)用程序提供訪問(wèn)數(shù)據(jù)庫(kù)的方法。數(shù)據(jù)庫(kù)在建立、使用和維護(hù)時(shí)由其統(tǒng)一管理、統(tǒng)一控制。

ADBMS         BDB          CDBS        DDBA

5. SQL中,建立視圖用的命令是 (      )

A.CREATE SCHEMA                 B.CREATE TABLE

C.CREATE VIEW                   D.CREATE INDEX

6. SQL語(yǔ)言中,條件“年齡BETWEEN 20 AND 30”表示年齡在2030之間,且(      )。

A.包括20歲和30              B.不包括20歲和30

C.包括20歲但不包括30        D.包括30歲但不包括20

8. MS SQL Server中,用來(lái)顯示數(shù)據(jù)庫(kù)信息的系統(tǒng)存儲(chǔ)過(guò)程是(       )

A. sp_dbhelp    B. sp_db       C. sp_help    D. sp_helpdb

9. SQL語(yǔ)言中,刪除一個(gè)表的命令是(      )

A. DELETE       B. DROP        C. CLEAR      D. REMOVE

10. SQL的視圖是從(      )中導(dǎo)出的。

A.基本表       B. 視圖        C. 基本表或視圖   D. 數(shù)據(jù)庫(kù)

二、判斷題(每空1分,共10)

  1. "在那遙遠(yuǎn)的地方" SQL中的字符串常量嗎?

  2. "11.9" SQL中的實(shí)型常量嗎?

  3. 語(yǔ)句 select 16%4, 的執(zhí)行結(jié)果是: 0 嗎?

  4. "2005.11.09" SQL中的日期型常量嗎?

  5. 2005.89 SQL中的貨幣型常量嗎?

  6. 語(yǔ)句 select 15/2 的執(zhí)行結(jié)果是: 7.5 嗎?

7. '李白'>'杜甫' 比較運(yùn)算的結(jié)果為真嗎?

8. 在事務(wù)中包含create database語(yǔ)句嗎?

  9. 創(chuàng)建唯一性索引的列可以有一些重復(fù)的值?

  10.固定數(shù)據(jù)庫(kù)角色:db_datawriter 的成員刪除本數(shù)據(jù)庫(kù)內(nèi)任何表中的數(shù)據(jù)嗎?

三、填空題(每空1分,共20)

1. 數(shù)據(jù)庫(kù)系統(tǒng)具有數(shù)據(jù)的_____________________________三級(jí)模式結(jié)構(gòu)。

2. SQL Server 2000局部變量名字必須以_________開(kāi)頭,而全局變量名字必須以_________開(kāi)頭。

3. 語(yǔ)句 select ascii('C'), char(68), len(' 你 是BigTiger    ') 的執(zhí)行結(jié)果是: _________、__________________

4. 語(yǔ)句 select upper('beautiful') , ltrim ('   我心中的太陽(yáng)') 的執(zhí)行結(jié)果是: _______________________。

5. 關(guān)系運(yùn)算主要有________________、________

6. 選擇運(yùn)算是根據(jù)某些條件對(duì)關(guān)系做______分割;投影是根據(jù)某些條件對(duì)關(guān)系做______分割。

7. 索引的類型主要有_             __             __

8. SQL Server 2000中,數(shù)據(jù)庫(kù)對(duì)象包括數(shù)據(jù)表、______、______、觸發(fā)器、規(guī)則、默認(rèn)和用戶自定義的數(shù)據(jù)類型等。

四、簡(jiǎn)述題(每小題5分,共10)

1. 簡(jiǎn)述使用游標(biāo)的步驟。

2. 簡(jiǎn)述SQL Server 2000的安全性管理機(jī)制,涉及登錄賬號(hào)、用戶、角色以及權(quán)限分配。

五、設(shè)計(jì)題(50)

現(xiàn)有關(guān)系數(shù)據(jù)庫(kù)如下:

數(shù)據(jù)庫(kù)名:學(xué)生成績(jī)數(shù)據(jù)庫(kù)

學(xué)生表(學(xué)號(hào) char(6),姓名,性別,民族,身份證號(hào))

課程表(課號(hào) char(6),名稱)

成績(jī)表(ID,學(xué)號(hào),課號(hào),分?jǐn)?shù))

SQL語(yǔ)言實(shí)現(xiàn)下列功能的sql語(yǔ)句代碼:

1. 創(chuàng)建數(shù)據(jù)庫(kù)[學(xué)生成績(jī)數(shù)據(jù)庫(kù)]代碼(2);

2. 創(chuàng)建[課程表]代碼(2)

   課程表(課號(hào) char(6),名稱)

   要求使用:主鍵(課號(hào))、非空(名稱)

3. 創(chuàng)建[學(xué)生表]代碼(6);

   學(xué)生表(學(xué)號(hào) char(6),姓名,性別,民族,身份證號(hào)) 

   要求使用:主鍵(學(xué)號(hào))、默認(rèn)(民族)、非空(民族,姓名)、唯一(身份證號(hào))、檢查(性別)

4. 創(chuàng)建[成績(jī)表]代碼(4);

   成績(jī)表(ID,學(xué)號(hào),課號(hào),分?jǐn)?shù))

   要求使用:主鍵(課號(hào))、外鍵(成績(jī)表.學(xué)號(hào),成績(jī)表.課號(hào))、檢查(分?jǐn)?shù)),自動(dòng)編號(hào)(ID)

5. 將下列課程信息添加到課程表的代碼(8)

        課號(hào)      課程名稱

        100001    大學(xué)語(yǔ)文

        100002    大學(xué)英語(yǔ)

        100003    西班牙語(yǔ)

 

        修改  課號(hào)為100002的課程名稱:實(shí)用英語(yǔ)

        刪除  課號(hào)為100003的課程信息       

6. 寫(xiě)出創(chuàng)建:成績(jī)表視圖(學(xué)號(hào),姓名,課號(hào),課程名稱,分?jǐn)?shù))的代碼;(4)

7. 寫(xiě)出創(chuàng)建:某門(mén)課程成績(jī) 內(nèi)嵌表值函數(shù)以及檢索的代碼;(6)

       檢索:所有修  實(shí)用英語(yǔ)  這門(mén)學(xué)生的成績(jī);

8. 寫(xiě)出創(chuàng)建:某門(mén)課程高低均分  計(jì)算某門(mén)課程成績(jī)最高分、最低分、平均分 存儲(chǔ)過(guò)程以及執(zhí)行的代碼;(6)

       執(zhí)行:所有修  實(shí)用英語(yǔ)  這門(mén)學(xué)生的最高分、最低分、平均分;

9. 檢索姓李的女同學(xué)的情況:姓名、性別、民族。(2)

10.   檢索有一門(mén)或一門(mén)以上課程成績(jī)大于等于90分的所有學(xué)生的信息,包括學(xué)號(hào)、姓名。(4)

11.   設(shè)置一SQL身份驗(yàn)證的賬戶:登錄名:U領(lǐng)導(dǎo),密碼:888,數(shù)據(jù)庫(kù)用戶名:U讀者,權(quán)限:可查詢查詢本數(shù)據(jù)庫(kù)中所有表、視圖、內(nèi)嵌表值函數(shù)的數(shù)據(jù)。請(qǐng)寫(xiě)出賬戶、權(quán)限設(shè)置的T_SQL腳本。(6)

 


SQL數(shù)據(jù)庫(kù)管理與開(kāi)發(fā)教程與實(shí)訓(xùn)》試題參考答案

一、1.C  2.A  3. B  4.A  5.C  6.A  7.   8.D  9.B  10.C

二、1. N  2.N  3.Y  4.N  5.N  6.N  7. Y  8.N  9.N  10.Y

三、1. 外模式、模式、內(nèi)模式。

2. @,@@

3. 67,  D,  12

4. BEAUTIFAL, 我心中的太陽(yáng)

5. 選擇、投影、連接。

6. 水平, 垂直

7. 聚簇索引  非聚簇索引

8. 視圖、存儲(chǔ)過(guò)程

四、簡(jiǎn)述題

1. 簡(jiǎn)述使用游標(biāo)的步驟

(1) 聲明游標(biāo):declare 游標(biāo)名 cursor for select語(yǔ)句;

(2) 打開(kāi)游標(biāo):open 游標(biāo)名;

(3) 處理數(shù)據(jù): fetch delete update

(4) 關(guān)閉游標(biāo):close 游標(biāo)名;

(5) 釋放游標(biāo):deallocate 游標(biāo)名;

2. 要點(diǎn):

1. 計(jì)算機(jī)的連接

2. SQL Server服務(wù)器登錄(登錄、固定服務(wù)器角色)

3. 數(shù)據(jù)庫(kù)的訪問(wèn)(用戶/角色:固定/自定義數(shù)據(jù)庫(kù)角色)

4. 數(shù)據(jù)表(視圖)的訪問(wèn)(select insert update delete)

5. 存儲(chǔ)過(guò)程/內(nèi)嵌表值函數(shù)的訪問(wèn)(execute/select)

6. 數(shù)據(jù)表(視圖)中列(字段)的訪問(wèn)(select update)

五、設(shè)計(jì)題

 

1.

create database [學(xué)生成績(jī)數(shù)據(jù)庫(kù)]

go

 

use [學(xué)生成績(jī)數(shù)據(jù)庫(kù)]

go

 

2. create table 學(xué)生表

([學(xué)號(hào)] char(6) primary key,

[姓名] nchar(4) not null,

[性別] nchar(1) check([性別] in ('', '')),

[民族] nchar(8) default '漢族' not null,

[身份證號(hào)] char(18) unique

)

 

3. create table 課程表

([課號(hào)] char(6) primary key,

 [名稱] char(40) not null

)

 

4. create table 成績(jī)表

(ID integer IDENTITY(1, 1),

[學(xué)號(hào)] char(6) references 學(xué)生表(學(xué)號(hào)),

[課號(hào)] char(6) references 課程表(課號(hào)),

[分?jǐn)?shù)] integer check([分?jǐn)?shù)] between 0 and 100)

)

 

5. insert 課程表 values('100001', '大學(xué)語(yǔ)文')

   insert 課程表 values('100002', '大學(xué)英語(yǔ)')

   insert 課程表 values('100003', '西班牙語(yǔ)')

   update課程表 set 名稱='實(shí)用英語(yǔ)' where 課號(hào)='100002'

   delete課程表 where 課號(hào)='100003'

6. create view [成績(jī)表視圖] as

select 成績(jī)表.學(xué)號(hào),姓名,成績(jī)表.課號(hào),名稱 課程名稱,分?jǐn)?shù)

from 成績(jī)表,學(xué)生表,課程表

where 成績(jī)表.學(xué)號(hào)=學(xué)生表.學(xué)號(hào)

  and 成績(jī)表.課號(hào)=課程表.課號(hào)

 

create view [成績(jī)表視圖] as

select 成績(jī)表.學(xué)號(hào),姓名,成績(jī)表.課號(hào),名稱 課程名稱,分?jǐn)?shù)

from 成績(jī)表 join 學(xué)生表 on 成績(jī)表.學(xué)號(hào)=學(xué)生表.學(xué)號(hào)

            join 課程表 on 成績(jī)表.課號(hào)=課程表.課號(hào)

 

7. create function [某門(mén)課程成績(jī)](@課程名 varchar(40))

returns table as

return (select 學(xué)號(hào),姓名,課程名稱,分?jǐn)?shù) from 成績(jī)表視圖

where 課程名稱=@課程名)

 

    create function [某門(mén)課程成績(jī)](@課程名 varchar(40))

returns table as

return (select * from 成績(jī)表視圖

where 課程名稱=@課程名)

 

select * from [某門(mén)課程成績(jī)]('實(shí)用英語(yǔ)')

 

8. create procedure [某門(mén)課程高低均分]

@課程名 varchar(40) as

select 課程名稱, 最高分=max(分?jǐn)?shù))、最低分=min(分?jǐn)?shù))、平均分=avg(分?jǐn)?shù))

from 成績(jī)表視圖

where 課程名稱 = @課程名

 

execute [某門(mén)課程高低均分]  '實(shí)用英語(yǔ)'

 

9. select 姓名, 性別, 民族 from 學(xué)生表 where 姓名 like '%' and 性別=''

10. select 學(xué)號(hào), 姓名 from 學(xué)生表 where學(xué)號(hào) in (select distinct 學(xué)號(hào) from 成績(jī)表 where分?jǐn)?shù)>=90)

11.

use [學(xué)生成績(jī)數(shù)據(jù)庫(kù)]

exec sp_addlogin 'U領(lǐng)導(dǎo)', NULL, '學(xué)生成績(jī)數(shù)據(jù)庫(kù)', '簡(jiǎn)體中文'

exec sp_password  NULL, '888', 'U領(lǐng)導(dǎo)'

exec sp_grantdbaccess 'U領(lǐng)導(dǎo)', 'U讀者'

exec sp_addrolemember 'db_datareader', 'U讀者'

 

use [學(xué)生成績(jī)數(shù)據(jù)庫(kù)]

exec sp_addlogin 'U領(lǐng)導(dǎo)', '888', '學(xué)生成績(jī)數(shù)據(jù)庫(kù)'

exec sp_grantdbaccess 'U領(lǐng)導(dǎo)', 'U讀者'

exec sp_addrolemember 'db_datareader', 'U讀者'


 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多