版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第1章數(shù)據(jù)庫(kù)概述
1.試說(shuō)明數(shù)據(jù)、數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)的概念。
答:數(shù)據(jù)是數(shù)據(jù)庫(kù)中存儲(chǔ)的基本對(duì)象。
數(shù)據(jù)庫(kù):是存放數(shù)據(jù)的場(chǎng)所。
數(shù)據(jù)庫(kù)管理系統(tǒng):管理數(shù)據(jù)庫(kù)數(shù)據(jù)及其功能的系統(tǒng)軟件。
數(shù)據(jù)庫(kù)系統(tǒng):由數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)管理員和數(shù)據(jù)庫(kù)應(yīng)用程序共同構(gòu)
成的系統(tǒng)。
2.數(shù)據(jù)管理技術(shù)的發(fā)展主要經(jīng)歷了哪幾個(gè)階段?
答:文件管理和數(shù)據(jù)庫(kù)管理。
3.文件管理方式在管理數(shù)據(jù)方面有哪些缺陷?
答:(1)編寫(xiě)應(yīng)用程序不方便。(2)數(shù)據(jù)冗余不可避免。(3)應(yīng)用程序依賴(lài)性。(4)不
支持對(duì)文件的并發(fā)訪(fǎng)問(wèn)。(5)數(shù)據(jù)間聯(lián)系弱。(6)難以滿(mǎn)足不同用戶(hù)對(duì)數(shù)據(jù)的需求。
4.與文件管理相比,數(shù)據(jù)庫(kù)管理有哪些優(yōu)點(diǎn)?
答:(1)相互關(guān)聯(lián)的數(shù)據(jù)集合;(2)較少的數(shù)據(jù)冗余;(3)程序與數(shù)據(jù)相互獨(dú)立;
(4)保證數(shù)據(jù)的安全可靠;(5)最大限度地保證數(shù)據(jù)的正確性;(6)數(shù)據(jù)可以共享并能
保證數(shù)據(jù)的一致性。
5.比較用文件管理和用數(shù)據(jù)庫(kù)管理數(shù)據(jù)的主要區(qū)別。
答:文件系統(tǒng)不能提供數(shù)據(jù)的獨(dú)立性,也不能提供數(shù)據(jù)共享、安全性等功能,這些
需要客戶(hù)端編程實(shí)現(xiàn)。而數(shù)據(jù)庫(kù)管理系統(tǒng)可以很方便地提供這些功能。
6.在數(shù)據(jù)庫(kù)管理方式中,應(yīng)用程序是否需要關(guān)心數(shù)據(jù)的存儲(chǔ)位置和存儲(chǔ)結(jié)構(gòu)?為什
么?
答;不需要。因?yàn)檫@些都由數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)維護(hù)。
7.在數(shù)據(jù)庫(kù)系統(tǒng)中,數(shù)據(jù)庫(kù)的作用是什么?
答:數(shù)據(jù)庫(kù)是存儲(chǔ)數(shù)據(jù)的倉(cāng)庫(kù),其作用是存儲(chǔ)數(shù)據(jù)。
8.在數(shù)據(jù)庫(kù)系統(tǒng)中,應(yīng)用程序可以不通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)而直接訪(fǎng)問(wèn)數(shù)據(jù)文件嗎?
答:不可以。
9.數(shù)據(jù)獨(dú)立性指的是什么?它能帶來(lái)哪些好處?
答:數(shù)據(jù)獨(dú)立性包括邏輯獨(dú)立性和物理獨(dú)立性?xún)刹糠?。物理?dú)立性是指當(dāng)數(shù)據(jù)的存
儲(chǔ)結(jié)構(gòu)發(fā)生變化時(shí),不影響應(yīng)用程序的特性;邏輯獨(dú)立性是指當(dāng)表達(dá)現(xiàn)實(shí)世界的信息內(nèi)
容發(fā)生變化時(shí),不影響應(yīng)用程序的特性。這兩個(gè)獨(dú)立性使用戶(hù)只需關(guān)心邏輯層即可,同
時(shí)增強(qiáng)了應(yīng)用程序的可維護(hù)性。
10.數(shù)據(jù)庫(kù)系統(tǒng)由哪幾部分組成,每一部分在數(shù)據(jù)庫(kù)系統(tǒng)中的作用大致是什么?
答:數(shù)據(jù)庫(kù)系統(tǒng)一般包括3個(gè)主要部分:數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)和應(yīng)用程序。數(shù)
據(jù)庫(kù)是數(shù)據(jù)的匯集,它以一定的組織形式保存在存儲(chǔ)介質(zhì)上;數(shù)據(jù)庫(kù)管理系統(tǒng)是管理數(shù)
據(jù)庫(kù)的系統(tǒng)軟件,它可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)系統(tǒng)的各種功能;應(yīng)用程序?qū)V敢詳?shù)據(jù)庫(kù)數(shù)據(jù)為基
礎(chǔ)的程序。
第2章數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
1.解釋數(shù)據(jù)模型的概念,為什么要將數(shù)據(jù)模型分成兩個(gè)層次?
答:數(shù)據(jù)模型實(shí)際上是模型化數(shù)據(jù)和信息的工具,在數(shù)據(jù)庫(kù)中,數(shù)據(jù)模型要滿(mǎn)足三個(gè)要
求:第一,要能夠比較真實(shí)地模擬現(xiàn)實(shí)世界;第二,要容易被人們理解;第三,要能夠
很方便地在計(jì)算機(jī)上實(shí)現(xiàn)。用一種模型來(lái)同時(shí)滿(mǎn)足這三方面的要求比較困難,因此在在
數(shù)據(jù)庫(kù)系統(tǒng)中針對(duì)不同的使用對(duì)象和應(yīng)用目的,采用了兩種不同的數(shù)據(jù)模型來(lái)實(shí)現(xiàn),一
個(gè)是概念層數(shù)據(jù)模型,用來(lái)滿(mǎn)足第一和第二個(gè)要求;另一個(gè)是組織層數(shù)據(jù)模型,用來(lái)滿(mǎn)
足第三個(gè)要求。
2.概念層數(shù)據(jù)模型和組織層數(shù)據(jù)模型分別是針對(duì)什么進(jìn)行的抽象?
答:概念層數(shù)據(jù)模型主要針對(duì)用戶(hù)的業(yè)務(wù)進(jìn)行抽象,組織層數(shù)據(jù)庫(kù)模型主要針對(duì)具體的
數(shù)據(jù)庫(kù)管理系統(tǒng)采用的數(shù)據(jù)組織方式進(jìn)行抽象。
3.實(shí)體之間的聯(lián)系有幾種?分別是哪些?請(qǐng)為每一種聯(lián)系舉出一個(gè)例子。
答:有三種:1:1;1:n;m:no1:1示例:系和系主任。l:n示例:班和學(xué)生;m:n示例:
教師和學(xué)生。
4.說(shuō)明實(shí)體-聯(lián)系模型中的實(shí)體、屬性和聯(lián)系的概念。
答:實(shí)體是具有公共性質(zhì)的并可相互區(qū)分的現(xiàn)實(shí)世界對(duì)象的集合。屬性是實(shí)體所具有的
特征或性質(zhì)。聯(lián)系是實(shí)體之間的關(guān)聯(lián)關(guān)系。
5.指明下列實(shí)體間聯(lián)系的種類(lèi):
(1)教研室和教師(假設(shè)一個(gè)教師只屬于一個(gè)教研室,一個(gè)教研室可有多名教師)。
答:一對(duì)多。
(2)商店和顧客。
答:多對(duì)多。
(3)國(guó)家和首都。
答:一對(duì)一。
6.解釋關(guān)系模型中的主碼、外碼、主屬性、非主屬性的概念,并說(shuō)明主碼、外碼的作用。
答:主碼是用于唯一確定表中一個(gè)元組的一個(gè)屬性或最小的屬性組。用于實(shí)現(xiàn)實(shí)體完整
性。
外碼用于實(shí)現(xiàn)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系(參照完整性)。
主屬性:候選鍵所包含的屬性。
非屬性:主屬性之外的其他屬性。
7.指出下列關(guān)系模式的主碼:
(1)考試情況(課程號(hào),考試性質(zhì),考試日期,考試地點(diǎn))。假設(shè)一門(mén)課程在不同的日期可
以有多次考試,但在同一天只能考一次。多門(mén)不同的課程可以同時(shí)進(jìn)行考試。
答:(課程號(hào),考試日期)
(2)教師授課(教師號(hào),課程號(hào),授課時(shí)數(shù),學(xué)年,學(xué)期)。假設(shè)一名教師在同一個(gè)學(xué)年和
學(xué)期可以講授多門(mén)課程,也可以在不同學(xué)年和學(xué)期多次講授同一門(mén)課程,對(duì)每門(mén)課程的講授
都有一個(gè)授課時(shí)數(shù)。
答:(教師號(hào),課程號(hào),學(xué)年)
(3)圖書(shū)借閱(書(shū)號(hào),讀者號(hào),借書(shū)日期,還書(shū)日期)。假設(shè)一個(gè)讀者可以在不同的日期多
次借閱同一本書(shū),一個(gè)讀者可以同時(shí)借閱多本不同的圖書(shū),一本書(shū)可以在不同的時(shí)間借給不
同的讀者。但一個(gè)讀者不能在同一天對(duì)同一本書(shū)借閱多次。
答:(書(shū)號(hào),讀者號(hào),借書(shū)日期)
8.設(shè)有如下兩個(gè)關(guān)系模式,試指出每個(gè)關(guān)系模式的主碼、外碼,并說(shuō)明外碼的引用關(guān)系。
產(chǎn)品表(產(chǎn)品號(hào),產(chǎn)品名稱(chēng),產(chǎn)品價(jià)格,生產(chǎn)日期),其中產(chǎn)品名稱(chēng)有重復(fù)。
銷(xiāo)售表(產(chǎn)品號(hào),銷(xiāo)售時(shí)間,銷(xiāo)售數(shù)量),假設(shè)可同時(shí)銷(xiāo)售多種產(chǎn)品,但同一產(chǎn)品在
同一時(shí)間只銷(xiāo)售一次。
答:產(chǎn)品的主碼:產(chǎn)品號(hào),無(wú)外瑪。
銷(xiāo)售的主碼:(產(chǎn)品號(hào),銷(xiāo)售時(shí)間),其中產(chǎn)品號(hào)為引用產(chǎn)品表的外碼。
9.關(guān)系模型的數(shù)據(jù)完整性包含哪些內(nèi)容?分別說(shuō)明每一種完整性的作用。
答:包含:實(shí)體完整性、參照完整性和用戶(hù)定義的完整性。
實(shí)體完整性:作用是保證表中的不存儲(chǔ)相同的數(shù)據(jù),也不存儲(chǔ)無(wú)意義的數(shù)據(jù)。
參照完整性:用于描述實(shí)體之間的聯(lián)系。
用戶(hù)定義的完整性:用于限定屬性的取值范圍,目的是保證數(shù)據(jù)庫(kù)中存儲(chǔ)的值與現(xiàn)
實(shí)世界相符。
10.數(shù)據(jù)庫(kù)系統(tǒng)包含哪三級(jí)模式?試分別說(shuō)明每一級(jí)模式的作用?
答:外模式、模式和內(nèi)模式。
外模式是對(duì)現(xiàn)實(shí)系統(tǒng)中用戶(hù)感興趣的整體數(shù)據(jù)結(jié)構(gòu)的局部描述,用于滿(mǎn)足不同用戶(hù)
對(duì)數(shù)據(jù)的需求。
模式:是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,它滿(mǎn)足所有用戶(hù)對(duì)數(shù)據(jù)的需
求。
內(nèi)模式:是對(duì)整個(gè)數(shù)據(jù)庫(kù)的底層表示,它描述了數(shù)據(jù)的存儲(chǔ)位置和存儲(chǔ)方式。
11.數(shù)據(jù)庫(kù)系統(tǒng)的兩級(jí)映像的功能是什么?它帶來(lái)了哪些好處?
答:兩級(jí)映像是外模式/模式映像和模式/內(nèi)模式映像。外模式/模式映像保證了當(dāng)模式發(fā)
生變化時(shí)可以保證外模式不變,從而是用戶(hù)的應(yīng)用程序不需要修改。模式/內(nèi)模式映像保
證了當(dāng)內(nèi)模式發(fā)生變化,比如存儲(chǔ)位置或存儲(chǔ)文件名改變,可以保持模式不變,從而使
用戶(hù)不需要知道這些變化。
12.數(shù)據(jù)庫(kù)三級(jí)模式劃分的優(yōu)點(diǎn)是什么?它能帶來(lái)哪些數(shù)據(jù)獨(dú)立性?
答:數(shù)據(jù)庫(kù)三級(jí)模式的劃分使用戶(hù)可以在邏輯層處理數(shù)據(jù),而不需要關(guān)心具體的物理細(xì)
節(jié),同時(shí)當(dāng)內(nèi)模式或模式發(fā)生變化時(shí),可以通過(guò)模式之間的映像關(guān)系,保持外模式不變,
從而避免了修改應(yīng)用程序。三級(jí)模式以及三級(jí)模式之間的兩級(jí)映像帶來(lái)了數(shù)據(jù)的邏輯獨(dú)
立性和物理獨(dú)立性。
13.簡(jiǎn)單說(shuō)明數(shù)據(jù)庫(kù)管理系統(tǒng)包含的功能。
答:數(shù)據(jù)定義、數(shù)據(jù)操縱、優(yōu)化和執(zhí)行、數(shù)據(jù)安全性和完整性、數(shù)據(jù)恢復(fù)和并發(fā)、盡可能高
效的完成各種操作。
第3章SQL語(yǔ)言基礎(chǔ)及數(shù)據(jù)定義功能
1.Tinyint數(shù)據(jù)類(lèi)型定義的數(shù)據(jù)的取值范圍是多少?
答:0、255。
2.日期時(shí)間類(lèi)型中的日期和時(shí)間的輸入格式是什么?
答:在輸入日期部分時(shí)可采用英文數(shù)字格式、數(shù)字加分隔符格式和純數(shù)字格式。采
用英文數(shù)字格式時(shí),月份可用英文全名或縮寫(xiě)形式。
在輸入時(shí)間部分時(shí)可以采用12小時(shí)格式或24小時(shí)格式。使用12小時(shí)制時(shí)要加
上AM或PY說(shuō)明是上午還是下午。在時(shí)與分之間可以使用冒號(hào)(:)作為分隔符
3.SmallDatatime類(lèi)型精確到哪個(gè)時(shí)間單位?
答:分鐘。
4.定點(diǎn)小數(shù)類(lèi)型numeric中的p和q的含義分別是什么?
答:P代表數(shù)字位長(zhǎng)度,即整數(shù)部分和小數(shù)部分的數(shù)字位之和。q代表小數(shù)位數(shù)。
5.Char(10)>nchar(10)的區(qū)別是什么?它們各能存放多少個(gè)字符?占用多少空間?
答:char(10)是普通編碼,固定占10個(gè)字節(jié),最多能存放10個(gè)字母或數(shù)字字符,5個(gè)
漢字。Nchar(10)是統(tǒng)一字符編碼,固定占20個(gè)字節(jié),最多能存放10個(gè)字符(包括字母
和漢字)。
6.Char(n)和varchar(n)的區(qū)別是什么?其中n的含義是什么?各占用多少空間?
答:Char(n)是定長(zhǎng)字符類(lèi)型,varchar(n)是可變長(zhǎng)字符類(lèi)型。Char(n)中的n代表固定
占n個(gè)字節(jié)的空間;varchar(n)中的n代表最多占n個(gè)字節(jié)的空間。
7.數(shù)據(jù)完整性的作用是什么?
答:數(shù)據(jù)的完整性作用是防止數(shù)據(jù)庫(kù)中存在不符合語(yǔ)義的數(shù)據(jù)。
8.在對(duì)數(shù)據(jù)進(jìn)行什么操作時(shí),系統(tǒng)檢查DEFAULT約束?在進(jìn)行什么操作時(shí),檢查CHECK
約束?
答:插入操作且省略了某些列的值時(shí)檢查DEFAULT約束。插入和修改操作檢查CHECK約
束。
9.UNIQUE約束的作用是什么?
答:限制列的取值不重復(fù)。
10.寫(xiě)出創(chuàng)建如下三張表的SQL語(yǔ)句,要求在定義表的同時(shí)定義數(shù)據(jù)的完整性約束:。
答:
Createtable圖書(shū)表(
書(shū)號(hào)nchar⑹primarykey,
書(shū)名nvarchar(30)notnull,
第一作者char(10)notnull,
出版日期smalldatetime,
價(jià)格:numeric(4,1)
Createtable書(shū)店表(
書(shū)店編號(hào)nchar(6)primarykey,
店名nvarchar(30)notnull,
電話(huà)char(8)check(電話(huà)like
'[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9:,),
地址varchar(40),
郵政編碼char(6)
>
Createtable圖書(shū)銷(xiāo)售表(
書(shū)號(hào)nchar(6)notnull,
書(shū)店編號(hào)nchar(6)notnull,
銷(xiāo)售日期smalldatetimenotnull;
銷(xiāo)售數(shù)量smalldatetimecheck(銷(xiāo)售數(shù)量>=1);
>
11.為“圖書(shū)表”添加“印刷數(shù)量”歹u,類(lèi)型為整數(shù),同時(shí)添加約束,要求此列的取值
要大于等于1000c
答:altertable圖書(shū)表Add印刷數(shù)量intcheck(印刷數(shù)量>=1000)
12.刪除“書(shū)店表”中的“郵政編碼”列。
答:altertable書(shū)店表Dropcolumn郵政編碼
13.將“圖書(shū)銷(xiāo)售表”中的“銷(xiāo)售數(shù)量”列的數(shù)據(jù)類(lèi)型改為整型。
答:altertable圖書(shū)銷(xiāo)售表Altercolumn銷(xiāo)售數(shù)量int
第4章數(shù)據(jù)操作
1.查詢(xún)sc表中的全部數(shù)據(jù)。
Select*fromsc
2.查詢(xún)計(jì)算機(jī)系學(xué)生的姓名和年齡。
Selectsname,sagefromstudentwheresdept='計(jì)算機(jī)系'
3.查詢(xún)成績(jī)?cè)?0?80分的學(xué)生的學(xué)號(hào)、課程號(hào)和成績(jī)。
Selectsno,eno,gradefromscwheregradebetween70and80
4.查詢(xún)計(jì)算機(jī)系年齡在18?20歲的男學(xué)生的姓名和年齡。
Selectsname,sagefromstudent
wheresdept='計(jì)算機(jī)系'andsagebetween18and20
5.查詢(xún)課程號(hào)為“cOOl”的課程的最高的分?jǐn)?shù)。。
Selectmax(grade)fromscwhereeno='C001z
6.查詢(xún)計(jì)算機(jī)系學(xué)生的最大年齡和最小年齡。
Selectmax(sage)最大年齡,min(sage)最小年齡fromstudent
Wheresdept='計(jì)算機(jī)系,
7.統(tǒng)計(jì)每個(gè)系的學(xué)生人數(shù)。
Selectsdept,count(*)人數(shù)fromstudent
Groupbysdept
8.統(tǒng)計(jì)每門(mén)課程的選課人數(shù)和考試最高分。
Selectcn。,count(*)選課人數(shù),max(grade)最高分fromsc
Groupbyeno
9.統(tǒng)計(jì)每個(gè)學(xué)生的選課門(mén)數(shù)和考試總成績(jī),并按選課門(mén)數(shù)升序顯示結(jié)果。
Selectsno,count(*)選課門(mén)數(shù),sum(grade)fromsc
Groupbysnoorderbycount(*)asc
10.查詢(xún)總成績(jī)超過(guò)200分的學(xué)生,要求列出學(xué)號(hào)、總成績(jī)。
Selectsno,sum(grade)總成績(jī)fromsc
Groupbysnohavingsum(grade)>200
11.查詢(xún)選修“C002”號(hào)課程的學(xué)生的姓名和所在系。
Selectsname,sdeptfromstudentsjoinscons.sno=sc.sno
Whereeno='C002z
12.查詢(xún)成績(jī)80分以上的學(xué)生的姓名、課程號(hào)和成績(jī),并按成績(jī)降序排列結(jié)果。
Selectsname,eno,grade
Fromstudentsjoinscons.sno=sc.sno
Wheregrade>80
Orderbygradedesc
13.查詢(xún)哪些課程沒(méi)有學(xué)生選修,要求列出課程號(hào)和課程名。
Selectc.cnozcnamefromcoursecleftjoinsconc.eno=sc.eno
Wheresc.enoisnull
14.查詢(xún)與Java在同一學(xué)期開(kāi)設(shè)的課程的課程名和開(kāi)課學(xué)期。
Selectame,cl.semesterfromcoursecl
joincoursec2oncl.semester=c2.semester
Whereame='Javazandame!='Java'
15.查詢(xún)與李勇年齡相同的學(xué)生的姓名、所在系和年齡。
Selectsi.sname,si.sdept,si.sagefromstudentsi
joinstudents2onsi.sage=s2.sage
Wheres2.sname='李勇,andsi.sname!='李勇,
16.用子查詢(xún)實(shí)現(xiàn)如下查詢(xún):
(1)查詢(xún)選修了“C001”號(hào)課程的學(xué)生的姓名和所在系。
Selectsname,sdeptfromstudent
Wheresnoin(selectsnofromscwhereeno='C001')
(2)查詢(xún)數(shù)學(xué)系成績(jī)80分以上的學(xué)生的學(xué)號(hào)、姓名、課程號(hào)和成績(jī)。
Selectsnofsname,eno,gradefromstudents
Joinscons.sno=sc.sno
Wheresdept='數(shù)學(xué)系'andsnoin(
Selectsnofromscwheregrade>80)
(3)查詢(xún)計(jì)算機(jī)系考試成績(jī)最高的學(xué)生的姓名。
Selectsnamefromstudentsjoinscons.sno=sc.sno
Wheresdept='計(jì)算機(jī)系,andgrade=(
Selectmax(grade)fromscjoinstudentsons.sno=sc.sno
Wheresdept'計(jì)算機(jī)系,)
(4)查詢(xún)年齡最大的男學(xué)生的姓名和年齡。
Selectsname,sagefromstudent
Wheresage=(selectmax(sage)fromstudent
wheressex='男')
andssex='男'
(5)查詢(xún)數(shù)據(jù)結(jié)構(gòu)考試成績(jī)最高的學(xué)生的姓名、所在系、性別和成績(jī)。
Selectsname,sdept,ssex,gradefromstudents
Joinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
Wherecname='數(shù)據(jù)結(jié)構(gòu)'
Andgradein(
Selectmax(grade)fromscjoincourseconc.cno=sc.eno
Wherecname='數(shù)據(jù)結(jié)構(gòu),)
17.查詢(xún)沒(méi)有選修Java課程的學(xué)生的姓名和所在系。
Selectsname,sdeptfromstudent
Wheresnonotin(
Selectsnofromscjoincourseconc.eno=sc.eno
Wherecname='Java')
18.查詢(xún)計(jì)算機(jī)系沒(méi)有選課的學(xué)生的姓名和性別。
Selectsname,ssexfromstudent
Wheresdept='計(jì)算機(jī)系,
Andsnonotin(
Selectsnofromsc)
19.創(chuàng)建一個(gè)新表,表名為其結(jié)構(gòu)為(COL1,COL2,COL3),其中,
COL1:整型,允許空值。
COL2:字符型,長(zhǎng)度為10,不允許空值。
COL3:字符型,長(zhǎng)度為10,允許空值。
試寫(xiě)出按行插入如下數(shù)據(jù)的語(yǔ)句(空白處表示空值)。
C0L1C0L2C0L3
B1
1B2C2
2B3
Createtabletest_t(
C0L1int,
COL2char(10)notnull>
COL3char(10))
Insertintotest_t(COL2)values('Bl')
Insertintotest_t(COL1,COL2)values(1,zB2f)
Insertintotest_tvalues(2,'B3',NULL)
20.刪除考試成績(jī)低于50分的學(xué)生的選課記錄。
Deletefromscwheregrade<50
21.刪除沒(méi)人選的課程的基本信息。
Deletefromcoursewhereenonotin(
Selectenofromcourse)
22.刪除計(jì)算機(jī)系Java成績(jī)不及格學(xué)生的Java選課記錄。
Deletefromsc
Fromscjoinstudentsons.sno=sc.sno
Joincourseconc.eno=sc.eno
wherecname='Java7andgrade<60
andsdept='計(jì)算機(jī)系,
23.將第2學(xué)期開(kāi)設(shè)的所有課程的學(xué)分增加2分。。
UpdateCoursesetcredit=credit+2
Wheresemester=2
24.將Java課程的學(xué)分改為3分。
Updatecoursesetcredit=3
wherecname='Java7
25.將計(jì)算機(jī)系學(xué)生的年齡增加1歲。
UpdateStudentsetsage=sage+1
wheresdept='計(jì)算機(jī)系'
26.將信息系學(xué)生的“計(jì)算機(jī)文化學(xué)”課程的考試成績(jī)加5分。
UpdateSCsetgrade=grade+5
Fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
Wheresdept='信息系,andcname='計(jì)算機(jī)文化學(xué),
27.查詢(xún)每個(gè)系年齡大于等于20的學(xué)生人數(shù),并將結(jié)果保存到一個(gè)新永久表Dept_Age中。
Selectsdept,count(*)人數(shù)intoDept_Agefromstudent
Wheresage>=20
Groupbysdept
28.查詢(xún)計(jì)算機(jī)系每個(gè)學(xué)生的JAVA考試情況,列出學(xué)號(hào)、姓名、成績(jī)和成績(jī)情況,其中成績(jī)
情況的顯示規(guī)則為:
如果成績(jī)大于等于90,則成績(jī)情況為“好”;
如果成績(jī)?cè)?0?89,則成績(jī)情況為“較好”;
如果成績(jī)?cè)?0?79,則成績(jī)情況為“一般”;
如果成績(jī)?cè)?0?69,則成績(jī)情況為“較差”;
如果成績(jī)小于60,則成績(jī)情況為“差二
Selects.sno,snam一,grade,成績(jī)情況=
Case
Whengrade>=90then'好'
Whengradebetween80and89then、較好,
Whengradebetween70and79then'一般,
Whengradebetween60and69then、較差,
Else'差,
end
fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
Wheresdept>=20
29.統(tǒng)計(jì)每個(gè)學(xué)生的選課門(mén)數(shù)(包括沒(méi)有選課的學(xué)生),列出學(xué)號(hào)、選課門(mén)數(shù)和選課情況,其
中選課情況顯示規(guī)則為:
如果選課門(mén)數(shù)大于等于6門(mén),則選課情況為“多”;
如果選課門(mén)數(shù)超過(guò)在3?5門(mén),則選課情況為“一般”;
如果選課門(mén)數(shù)在「2H,則選課情況為“偏少
如果沒(méi)有選課,則選課情況為“未選課”。
30.修改全部課程的學(xué)分,修改規(guī)則如下:
如果是第1?2學(xué)期開(kāi)設(shè)的課程,則學(xué)分增加5分;
如果是第3?4學(xué)期開(kāi)設(shè)的課程,則學(xué)分增加3分;
如果是第5?6學(xué)期開(kāi)設(shè)的課程,則學(xué)分增加1分;
對(duì)其他學(xué)期開(kāi)設(shè)的課程,學(xué)分不變。
Selects.sno,count(sc.sno)選課門(mén)數(shù),選課情況=
Case
Whencount(sc.sno)>=6then'多,
Whencount(sc.sno)between3and5then'一般'
Whencount(sc.sno)between1and2then'偏少'
Whencount(sc.sno)=0then'未選課,
end
fromstudentsleftjoinscons.sno=sc.sno
Groupbys.sno
31.查詢(xún)“李勇”和“王大力”所選的全部課程,列出課程名、開(kāi)課學(xué)期和學(xué)分,不包括重
復(fù)的結(jié)果。
Selectcname,semester,creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='李勇'
union
Selectcname,semester^creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='王大力'
32.查詢(xún)?cè)诘?學(xué)期開(kāi)設(shè)的課程中,“李勇”選了但“王大力”沒(méi)選的課程,列出課程名和學(xué)
分。
Selectcname,semester,creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='李勇'andsemester=3
except
Selectcname,semester,creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='王大力'andsemester=3
33.查詢(xún)?cè)趯W(xué)分大于3分的課程中,“李勇”和“王大力”所選的相同課程,列出課程名和學(xué)
分。
Selectcname,semester,creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='李勇'andcredit>3
INTERSECT
Selectcname,semester,creditfromcoursec
joinsconc.eno=sc.eno
Joinstudentsons.sno=sc.sno
Wheresname='王大力'andcredit>3
第5章索引和視圖
1.試說(shuō)明使用視圖的好處。
答:利用視圖可以簡(jiǎn)化客戶(hù)端的數(shù)據(jù)查詢(xún)語(yǔ)句,使用戶(hù)能從多角度看待同一數(shù)據(jù),可以
提高數(shù)據(jù)的安全性,視圖對(duì)應(yīng)數(shù)據(jù)庫(kù)三級(jí)模式中的外模式,因此提供了一定程度的邏輯
獨(dú)立性。
2.使用視圖可以加快數(shù)據(jù)的查詢(xún)速度,這句話(huà)對(duì)嗎?為什么?
答:不對(duì),因?yàn)橥ㄟ^(guò)視圖查詢(xún)數(shù)據(jù)時(shí),比直接針對(duì)基本表查詢(xún)數(shù)據(jù)多了一個(gè)轉(zhuǎn)換過(guò)程,
即從外模式到模式的轉(zhuǎn)換。
3.使用第3章建立的Student、Course和SC表,寫(xiě)出創(chuàng)建滿(mǎn)足下述要求的視圖的SQL
語(yǔ)句。
(1)查詢(xún)學(xué)生的學(xué)號(hào)、姓名、所在系、課程號(hào)、課程名、課程學(xué)分。
CreateviewvlAs
Selects.sno,sname,sdept,c.cnofcnamezcredit
Fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
(2)查詢(xún)學(xué)生的學(xué)號(hào)、姓名、選修的課程名和考試成績(jī)。
Createviewv2As
Selects.sno,sname,cname,grade
Fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
(3)統(tǒng)計(jì)每個(gè)學(xué)生的選課門(mén)數(shù),要求列出學(xué)生學(xué)號(hào)和選課門(mén)數(shù)。
Createviewv3As
Selectsnozcount(*)astotal
Fromscgroupbysno
(4)統(tǒng)計(jì)每個(gè)學(xué)生的修課總學(xué)分,要求列出學(xué)生學(xué)號(hào)和總學(xué)分(說(shuō)明:考試成績(jī)大于
等于60才可獲得此門(mén)課程的學(xué)分)。
Createviewv4As
Selectsno,sum(credit)astotal_credit
Fromsnojoincourseconc.eno=sc.eno
Wheregrade>=60
Groupbysno
(5)查詢(xún)計(jì)算機(jī)系JAVA考試成績(jī)最高的學(xué)生的學(xué)號(hào)、姓名和JAVA考試成績(jī)。
Createviewv5As
Selecttop1withtiess.sno,snamezgrade
Fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
Wheresdept='計(jì)算機(jī)系,andcname='java,
Orderbygradedesc
4.利用第3題建立的視圖,完成如下查詢(xún):
(1)查詢(xún)考試成績(jī)大于等于90分的學(xué)生的姓名、課程名和成績(jī)。
Selectsname,cname,gradeFromv2wheregrade>=90
(2)查詢(xún)選課門(mén)數(shù)超過(guò)3門(mén)的學(xué)生的學(xué)號(hào)和選課門(mén)數(shù)。
Select*fromv3wheretotal>=3
(3)查詢(xún)計(jì)算機(jī)系選課門(mén)數(shù)超過(guò)3門(mén)的學(xué)生的姓名和選課門(mén)數(shù)。
Selectsname,totalfromv3joinstudentsons.sno=v3.sno
Wheresdept='計(jì)算機(jī)系'andtotal>=3
(4)查詢(xún)修課總學(xué)分超過(guò)10分的學(xué)生的學(xué)號(hào)、姓名、所在系和修課總學(xué)分。
Selectv4.sno,sname,sdept,total_credit
Fromv4joinstudentsons.sno=v4.sno
Wheretotal_credit>=10
(5)查詢(xún)年齡大于等于20歲的學(xué)生中,修課總學(xué)分超過(guò)10分的學(xué)生的姓名、年齡、
所在系和修課總學(xué)分。
Selectsname,sage,sdept,total_credit
Fromv4joinstudentsons.sno=v4.sno
Wheresage>=20andtotal_credit>=10
5.修改第3題(4)定義的視圖,使其查詢(xún)每個(gè)學(xué)生的學(xué)號(hào)、總學(xué)分以及總的選課門(mén)數(shù)。
Alterviewv4As
Selectsno,sum(credit)astotal_creditzcount(*)astotal_cno
Fromscjoincourseconc.eno=sc.eno
Groupbysno
6.修改第3題(5)定義的視圖,使其統(tǒng)計(jì)全體學(xué)生中JAVA考試成績(jī)最高的學(xué)生的學(xué)號(hào)、姓
名、所在系和JAVA考試成績(jī)。
Alterviewv5As
Selecttop1withtiess.snozsname,sdept,grade
Fromstudentsjoinscons.sno=sc.sno
Joincourseconc.eno=sc.eno
Wherecname='java,
Orderbygradedesc
第6章關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論
L.關(guān)系規(guī)范化中的操作異常有哪些?它是由什么引起的?解決的辦法是什么?
答:主要有插入異常、刪除異常和修改異常,這些都是由數(shù)據(jù)冗余引起的,解決的辦法
是進(jìn)行模式分解,消除數(shù)據(jù)冗余,
2.第一范式、第二范式和第三范式的關(guān)系的定義分別是什么?
答:第一范式:不包含重復(fù)組的關(guān)系(即不包含非原子項(xiàng)的屬性)是第一范式的關(guān)系。
第二范式:如果R(U,F)W1NF,并且R中的每個(gè)非主屬性都完全函數(shù)依賴(lài)于主碼,
MR(U,F)E2NFo
第三范式:如果R(U,F)W2NF,并且所有的非主屬性都不傳遞依賴(lài)于主碼,則
R(U,F)S3NF。
3.什么是部分函數(shù)依賴(lài)?什么是傳遞函數(shù)依賴(lài)?請(qǐng)舉例說(shuō)明。
答:部分函數(shù)依賴(lài):如果X-Y,并且對(duì)于X的一個(gè)任意真子集X,有X,一Y成立,則稱(chēng)
Y部分函數(shù)依賴(lài)于X。
傳遞函數(shù)依賴(lài):如果X-Y、Y-Z,則稱(chēng)Z傳遞函數(shù)依賴(lài)于X。
例1.對(duì)于關(guān)系模式:選課(學(xué)號(hào),姓名,課程號(hào),成績(jī))
該關(guān)系模式的主碼是(學(xué)號(hào),課程號(hào)),而有:學(xué)號(hào)分姓名
因此姓名對(duì)主碼是部分函數(shù)依賴(lài)關(guān)系。
例2.對(duì)于關(guān)系模式:學(xué)生(學(xué)號(hào),姓名,所在系,系主任)
該關(guān)系模式的主碼是:學(xué)號(hào),由于有:學(xué)號(hào)令所在系,所在系9系主任
因此系主任對(duì)學(xué)號(hào)是傳遞函數(shù)依賴(lài)關(guān)系。
4.第三范式的關(guān)系模式是否一定不包含部分依賴(lài)關(guān)系?
答:是。
5.對(duì)于主碼只由一個(gè)屬性組成的關(guān)系模式,如果它是第一范式關(guān)系模式,則它是否一
定也是第二范式關(guān)系模式?
答:是。
6.設(shè)有關(guān)系模式:學(xué)生修課(學(xué)號(hào),姓名,所在系,性別,課程號(hào),課程名,學(xué)分,成績(jī))。
設(shè)一個(gè)學(xué)生可以選多門(mén)課程,一門(mén)課程可以被多名學(xué)生選。每個(gè)學(xué)生對(duì)每門(mén)課程有唯一
的考試成績(jī)。一個(gè)學(xué)生有唯一的所在系,每門(mén)課程有唯一的課程名和學(xué)分。請(qǐng)指出此關(guān)
系模式的候選碼,判斷此關(guān)系模式是第幾范式的,若不是第三范式的,請(qǐng)將其規(guī)范化為
第三范式關(guān)系模式,并指出分解后的每個(gè)關(guān)系模式的主碼和外碼。
答:候選碼:(學(xué)號(hào),課程號(hào))
第一范式。因?yàn)橛校簩W(xué)號(hào)分姓名,因此存在部分函數(shù)依賴(lài)(學(xué)號(hào),課程號(hào))P-姓名
第三范式關(guān)系模式:
學(xué)生(箜號(hào),姓名,所在系,性別)
課程(課程號(hào),課程名,學(xué)分)
考試(學(xué)號(hào),課程號(hào),成績(jī)),學(xué)號(hào)為引用學(xué)生的外碼,課程號(hào)為引用課程的外碼。
7.設(shè)有關(guān)系模式:學(xué)生(學(xué)號(hào),姓名,所在系,班號(hào),班主任,系主任),其語(yǔ)義為:一
個(gè)學(xué)生只在一個(gè)系的一個(gè)班學(xué)習(xí),一個(gè)系只有一個(gè)系主任,一個(gè)人只擔(dān)任一個(gè)系的系主
任;一個(gè)班只有一名班主任,但一名教師可以擔(dān)任多個(gè)班的班主任;一個(gè)系可以有多個(gè)
班。請(qǐng)指出此關(guān)系模式的候選碼,判斷此關(guān)系模式是第幾范式的,若不是第三范式的,
請(qǐng)將其規(guī)范化為第三范式關(guān)系模式,并指出分解后的每個(gè)關(guān)系模式的主碼和外碼。
答:候選碼:學(xué)號(hào)
屬于第二范式。
但有:學(xué)號(hào)分班號(hào),班號(hào)分班主任,因此存在傳遞函數(shù)依賴(lài):學(xué)號(hào)傳遞分班主任。
第三范式關(guān)系模式:
學(xué)生(學(xué)號(hào),姓名,所在系,班號(hào)),班號(hào)為引用班的外碼,所在系為引用系的外碼。
班(班號(hào),班主任)
系(系名,系主任)
8.設(shè)有關(guān)系模式:教師授課(課程號(hào),課程名,學(xué)分,教師號(hào),教師名,職稱(chēng),授課時(shí)數(shù),
授課學(xué)年),其語(yǔ)義為:一門(mén)課程(由課程號(hào)決定)有確定的課程名和學(xué)分,每名教師
(由教師號(hào)決定)有確定的教師名和職稱(chēng),每門(mén)課程可以由多名教師講授,每名教師也
可以講授多門(mén)課程,在同一學(xué)年每個(gè)教師對(duì)每門(mén)課程只講授一次,且有確定的授課時(shí)數(shù)。
指出此關(guān)系模式的候選碼,判斷此關(guān)系模式屬于第幾范式,若不屬于第三范式,請(qǐng)將其
規(guī)范化為第三范式關(guān)系模式,并指出分解后的每個(gè)關(guān)系模式的主碼和外碼。。
答:候選碼:(課程號(hào),授課教師號(hào))
屬于第一范式。因?yàn)橛校赫n程號(hào)分課程名,因此存在部分函數(shù)依賴(lài)關(guān)系:(課程號(hào),
授課教師號(hào))pl課程名
第三范式關(guān)系模式:
課程(課程號(hào),課程名,學(xué)分)
教師(教師號(hào),教師名,職稱(chēng))
授課(課程號(hào),教師號(hào),授課時(shí)數(shù),授課學(xué)年),課程號(hào)為引用課程的外碼,教師號(hào)
為引用教師的外碼。
第7章數(shù)據(jù)庫(kù)保護(hù)
1.試說(shuō)明事務(wù)的概念及四個(gè)特征。
答:事務(wù)的概念及四個(gè)特征為原子性、一致性、隔離性和持久性。原子性指事務(wù)的原子
性是指事務(wù)是數(shù)據(jù)庫(kù)的邏輯工作單位,事務(wù)中的操作,要么都做,要么都不做。一致
性指定事務(wù)執(zhí)行的結(jié)果必須是使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。隔
離性指數(shù)據(jù)庫(kù)中一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。持久性指事務(wù)一旦提交,則其
對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)的改變就是永久的。
2.事務(wù)處理模型有哪兩種?
答:一種是ISO制定的事務(wù)處理模型,即明尾暗頭;另一種是T-SQL事務(wù)處理模型,即
事務(wù)有明確的開(kāi)始和結(jié)束標(biāo)記。
3.并發(fā)控制的措施是什么?
答:加鎖。
4.設(shè)有如下三個(gè)事務(wù):
TLB二A+1:T2:B=B*2:T3:A=B+1
(1)設(shè)A的初值為2,B的初值為1,如果這三個(gè)事務(wù)并發(fā)的執(zhí)行,則可能的正確的執(zhí)行
結(jié)果有哪些?
答:Ti-T23T3:A=7B=6
ITT39T2:A=4B=6
T2^TI^T3:A=3B=3
A=3B=4
T;^TI^T2:A=2B=6
T^L^Ti:A=2B=3
(2)給出一種遵守兩段鎖協(xié)議的并發(fā)調(diào)度策略。
5.當(dāng)某個(gè)事務(wù)對(duì)某段數(shù)據(jù)加了S鎖之后,在此事務(wù)釋放鎖之前,其他事務(wù)可以對(duì)此段數(shù)據(jù)
加什么鎖?
答:S鎖(共享鎖)。
6.什么是死鎖?如何預(yù)防死鎖?
答:事務(wù)為得到某個(gè)資源而處于無(wú)限等待狀態(tài),就是死鎖。預(yù)防死鎖的方法有多種,常用
的方法有一次封鎖法和順序封鎖法。
7.三級(jí)封鎖協(xié)議分別是什么?各級(jí)封鎖協(xié)議的主要區(qū)別是什么?每一級(jí)封鎖協(xié)議能保證
什么?
答:一級(jí)封鎖協(xié)議:對(duì)事務(wù)T要修改的數(shù)據(jù)加X(jué)鎖,直到事務(wù)結(jié)束(包括正常結(jié)束和非正
常結(jié)束)時(shí)才釋放。
二級(jí)封鎖協(xié)議:一級(jí)封鎖協(xié)議加上事務(wù)T對(duì)要讀取的數(shù)據(jù)加S鎮(zhèn),讀完后即釋放S鎖。
三級(jí)封鎖協(xié)議:一級(jí)封鎖協(xié)議加上事務(wù)T對(duì)要讀取的數(shù)據(jù)加S鎖,并直到事務(wù)結(jié)束才釋
放。
三個(gè)封鎖協(xié)議的區(qū)別是在對(duì)讀數(shù)據(jù)的加鎖上。
一級(jí)封鎖協(xié)議可以防止丟失修改;二級(jí)封鎖協(xié)議除了可以防止丟失修改外,還可以防止
讀“臟”數(shù)據(jù);三級(jí)封鎖協(xié)議除了可以防止丟失修改和不讀“臟”數(shù)據(jù)之外,還進(jìn)一步防止
了不可重復(fù)讀。
8.什么是可串行化調(diào)度?如何判斷一個(gè)并行執(zhí)行的結(jié)果是否是正確的?
答:多個(gè)事務(wù)的并發(fā)執(zhí)行是正確的,當(dāng)且僅當(dāng)其結(jié)果與按某一順序的串行執(zhí)行的結(jié)果相同,
稱(chēng)這種調(diào)度為可串行化的調(diào)度。
如果并發(fā)調(diào)度的執(zhí)行結(jié)果和某個(gè)串行調(diào)度結(jié)果一樣,這個(gè)并發(fā)調(diào)度就是正確的調(diào)度。
9.兩段鎖的含義是什么?
答:兩段鎖是指所有的事務(wù)必須分為兩個(gè)階段對(duì)數(shù)據(jù)進(jìn)行加鎖和解鎖,具體內(nèi)容如下:
?在對(duì)任何數(shù)據(jù)進(jìn)行讀、寫(xiě)操作之前,首先要獲得對(duì)該數(shù)據(jù)的封鎖。
?在釋放一個(gè)封鎖之后,事務(wù)不再申請(qǐng)和獲得任何其他鎖。。
10.數(shù)據(jù)庫(kù)故障大致分為幾類(lèi)?
答:主要有三類(lèi):事務(wù)內(nèi)部的故障;系統(tǒng)故障;其他故障。
11.數(shù)據(jù)庫(kù)備份的作用是什么?
答:主要有三類(lèi):事務(wù)內(nèi)部的故障;系統(tǒng)故障;其他故障。
第8章數(shù)據(jù)庫(kù)設(shè)計(jì)
1.簡(jiǎn)述數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程。
答;數(shù)據(jù)庫(kù)設(shè)計(jì)一般包含如下過(guò)程;
?需求分析。
?結(jié)構(gòu)設(shè)計(jì),包括概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)。
?行為設(shè)計(jì),包括功能設(shè)計(jì)、事務(wù)設(shè)計(jì)和程序設(shè)計(jì)。
?數(shù)據(jù)庫(kù)實(shí)施,包括加載數(shù)據(jù)庫(kù)數(shù)據(jù)和調(diào)試運(yùn)行應(yīng)用程序。
?數(shù)據(jù)庫(kù)運(yùn)行和維護(hù)階段。
2.數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)包含哪幾個(gè)過(guò)程?
答:概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)。
3.需求分析中發(fā)現(xiàn)事實(shí)的方法有哪些?
答:常用的有檢查文檔、面談、觀察操作中的業(yè)務(wù)、研究和問(wèn)卷調(diào)查等。
4.數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)有哪些特點(diǎn)?
答:
?有豐富的語(yǔ)義表達(dá)能力。
?易于交流和理解。
?易于更改°
?易于向各種數(shù)據(jù)模型轉(zhuǎn)換,易于導(dǎo)出與DBMS有關(guān)的邏輯模型。
5.什么是數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)?簡(jiǎn)述其設(shè)計(jì)步驟。
答:邏輯結(jié)構(gòu)設(shè)計(jì)的任務(wù)是把在概念結(jié)構(gòu)設(shè)計(jì)中設(shè)計(jì)的基本E-R模型轉(zhuǎn)換為具體的數(shù)據(jù)
庫(kù)管理系統(tǒng)支持的組織層數(shù)據(jù)模型。
邏輯結(jié)構(gòu)設(shè)計(jì)一般包含兩個(gè)步驟:
(1)將概念結(jié)構(gòu)轉(zhuǎn)換為某種組織層數(shù)據(jù)模型。
(2)對(duì)組織層數(shù)據(jù)模型進(jìn)行優(yōu)化。
6.把E-R模型轉(zhuǎn)換為關(guān)系模式的轉(zhuǎn)換規(guī)則有哪些?
答:轉(zhuǎn)換的一般規(guī)則如下:
一個(gè)實(shí)體轉(zhuǎn)換為一個(gè)關(guān)系模式。實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的
主碼。
對(duì)于實(shí)體間的聯(lián)系有以下不同的情況:
(1)1:1聯(lián)系一般是將聯(lián)系與任意一端實(shí)體所對(duì)應(yīng)的關(guān)系模式合并,即在一個(gè)實(shí)體
的關(guān)系模式的屬性中加入另一個(gè)實(shí)體的碼和聯(lián)系本身的屬性。
(2)1:n聯(lián)系一般與n端所對(duì)應(yīng)的關(guān)系模式合并,即在n端對(duì)應(yīng)的關(guān)系模式中加入
1端實(shí)體的碼以及聯(lián)系本身的屬性。
(3)m:n聯(lián)系必須轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式。與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)
系本身的屬性均轉(zhuǎn)換為此關(guān)系模式的屬性,且關(guān)系模式的主碼包含各實(shí)體的碼。
(4)有相同主碼的關(guān)系模式可以合并。
7.數(shù)據(jù)模型的優(yōu)化包含哪些方法?
答:數(shù)據(jù)模型的優(yōu)化通常以關(guān)系規(guī)范化理論為指導(dǎo),并考慮系統(tǒng)的性能。具體為:
(1)確定各屬性間的函數(shù)依賴(lài)關(guān)系。根據(jù)需求分析階段得出的語(yǔ)義,分別寫(xiě)出每個(gè)關(guān)系
模式的各屬性之間的函數(shù)依賴(lài)以及不同關(guān)系模式中各屬性之間的數(shù)據(jù)依賴(lài)關(guān)系。
(2)對(duì)各個(gè)關(guān)系模式之間的數(shù)據(jù)依賴(lài)進(jìn)行極小化處理,消除冗余的聯(lián)系。
(3)判斷每個(gè)關(guān)系模式的范式,根據(jù)實(shí)際需要確定最合適的范式。
(4)根據(jù)需求分析階段得到的處理要求,分析這些模式對(duì)于這樣的應(yīng)用環(huán)境是否合適,
確定是否要對(duì)某些模式進(jìn)行分解或合并。
(5)對(duì)關(guān)系模式進(jìn)行必要的分解,以提高數(shù)據(jù)的操作效率和存儲(chǔ)空間的利用率。常用的
分解方法是水平分解和垂直分解。
8.圖7-28(a)~(d)所示為某企業(yè)信息管理系統(tǒng)中的局部E-R圖,請(qǐng)將這些局部E-R
圖合并為一個(gè)全局E-R圖,并指明各實(shí)體以及聯(lián)系的屬性,標(biāo)明聯(lián)系的種類(lèi)(注:
為使圖形簡(jiǎn)潔明了,在全局E-R圖中可只畫(huà)出實(shí)體和聯(lián)系,屬性單獨(dú)用文字描述)。
將合并后的E-R圖轉(zhuǎn)換為符合3NF要求的關(guān)系模式,并說(shuō)明主碼和外碼。
9.將下列E-R圖轉(zhuǎn)換為符合3NF的關(guān)系模式,并指出每個(gè)關(guān)系模式的主碼和外碼。
(1)圖8-27所示為描述圖書(shū)、讀者以及讀者借閱圖書(shū)的E-R圖。
答:對(duì)圖書(shū)、讀者E-R模型,轉(zhuǎn)換后的關(guān)系模式為:
圖書(shū)(書(shū)號(hào),書(shū)名,出版日期,作者)
讀者(讀者編號(hào),讀者姓名,聯(lián)系電話(huà),所在單位)
借閱(書(shū)號(hào),讀者編號(hào),借書(shū)日期)書(shū)號(hào)為引用圖書(shū)的外碼,讀者編號(hào)為引用讀者
的外碼。
(2)
廠(chǎng)家(廠(chǎng)家編號(hào),聯(lián)系地址,聯(lián)系電話(huà))
商店(商店編號(hào),商店名,聯(lián)系電話(huà))
商品(商品編號(hào),商品名稱(chēng),庫(kù)存量,商品分類(lèi)),
訂購(gòu)(商店號(hào),廠(chǎng)家編號(hào),商品編號(hào),訂購(gòu)日期,訂購(gòu)數(shù)量),商店號(hào)為引用商店的
外碼,商品編號(hào)為引用商品的外瑪,廠(chǎng)家編號(hào)為引用廠(chǎng)家的外碼。
(3)
學(xué)生(學(xué)號(hào),姓名,性別,專(zhuān)業(yè),社團(tuán)號(hào),參加日期),社團(tuán)號(hào)是引用社團(tuán)的外碼。
社團(tuán)(社團(tuán)號(hào),社團(tuán)名,電話(huà),性質(zhì))
第9章SQLServer基礎(chǔ)
二.SQLServer2012提供了幾個(gè)版本?
答:提供了企業(yè)版、商業(yè)智能版、標(biāo)準(zhǔn)版、開(kāi)發(fā)版、簡(jiǎn)易版。
對(duì)操作系統(tǒng)的要求:
2.安裝SQLServer2012對(duì)硬盤(pán)及內(nèi)存的要求分別是什么?
答:全部安裝大概需要4GB空間,內(nèi)存不小于IGBo
3.SQLServer實(shí)例的含義是什么?實(shí)例名的作用是什么?
答:實(shí)例代表一個(gè)實(shí)際安裝的SQLServer,實(shí)例名標(biāo)識(shí)了每個(gè)不同的實(shí)例。
4.SQLServer2012的核心引擎是什么?
答:SQLServer(MSSQLSERVER)。
5.SQLServer2012提供的設(shè)置服務(wù)啟動(dòng)方式的工具是哪個(gè)?
答:SQLServerConfigurationManager。
7.提供通過(guò)圖形化方法操作數(shù)據(jù)庫(kù)的工具是哪個(gè)?
答:SQLServerManagementStudio。
第10章數(shù)據(jù)庫(kù)及表的創(chuàng)建與管理
1.根據(jù)數(shù)據(jù)庫(kù)用途的不同,SQLServer將數(shù)據(jù)庫(kù)分為哪兩類(lèi)?
答:系統(tǒng)數(shù)據(jù)庫(kù)和用戶(hù)數(shù)據(jù)庫(kù)。
2.安裝完SQLServer之后系統(tǒng)提供了哪些系統(tǒng)數(shù)據(jù)庫(kù)?每個(gè)系統(tǒng)數(shù)據(jù)庫(kù)的作用是什么?
答:4個(gè)系統(tǒng)數(shù)據(jù)庫(kù):master、msdb>model和tempdbo
?master:用于記錄SQLServer系統(tǒng)中所有系統(tǒng)級(jí)信息。
?msdb:供SQLServer代理服務(wù)調(diào)度報(bào)警和作業(yè)以及記錄操作員時(shí)使用,保
存關(guān)于調(diào)度報(bào)警、作業(yè)、操作員等信息。
?mode1:包含所有用戶(hù)數(shù)據(jù)庫(kù)的共享信息。
?tempdb:是臨時(shí)數(shù)據(jù)走,用于存儲(chǔ)用戶(hù)創(chuàng)建的臨時(shí)表、用戶(hù)聲明的變量以及
用戶(hù)定義的游標(biāo)數(shù)據(jù)等,并為數(shù)據(jù)的排序等操作提供一個(gè)臨時(shí)工作空間。
3.SQLServer數(shù)據(jù)庫(kù)由哪兩類(lèi)文件組成?這些文件的推薦擴(kuò)展名分別是什么?
答:數(shù)據(jù)文件和日志文件。數(shù)據(jù)文件中主數(shù)據(jù)文件的推薦擴(kuò)展名為:.mdf;次要數(shù)據(jù)文
件的推薦擴(kuò)展名為:.ndf。日志文件的推薦擴(kuò)展名為:
4.SQLServer數(shù)據(jù)庫(kù)可以包含幾個(gè)主要數(shù)據(jù)文件?幾個(gè)次要數(shù)據(jù)文件?幾個(gè)日志文件?
答:1個(gè)主數(shù)據(jù)文件,。個(gè)或多個(gè)次要數(shù)據(jù)文件,1個(gè)或多個(gè)日志文件。
5.數(shù)據(jù)文件和口志文件分別包含哪些屬性?
答:包含:邏輯文件名、物理存儲(chǔ)位置、初始大小、增長(zhǎng)方式、最大大小5個(gè)屬性。
6.SQLServer中數(shù)據(jù)的存儲(chǔ)單位是什么?存儲(chǔ)單位對(duì)存儲(chǔ)數(shù)據(jù)有何限制?
答:數(shù)據(jù)頁(yè)。數(shù)據(jù)頁(yè)是數(shù)據(jù)的最小存儲(chǔ)分配單位,其大小也就是表中一行數(shù)據(jù)的最大大
小,因?yàn)樾胁荒芸珥?yè)存儲(chǔ)。
7.SQLServer2012每個(gè)數(shù)據(jù)頁(yè)的大小是多少?數(shù)據(jù)頁(yè)的大小對(duì)表中一行數(shù)據(jù)大小的限制
有何關(guān)系?
答:8KB。表中一行數(shù)據(jù)的大小不能超過(guò)一個(gè)數(shù)據(jù)頁(yè)的大小。
8.如何估算某個(gè)數(shù)據(jù)表所占的存儲(chǔ)空間?如果某個(gè)數(shù)據(jù)表包含20000行數(shù)據(jù),每行的
大小是5000字節(jié),則此數(shù)據(jù)庫(kù)表大約需要多少存儲(chǔ)空間?在這些存儲(chǔ)空間中,有多少
空間是浪費(fèi)的?
答:根據(jù)數(shù)據(jù)是按數(shù)據(jù)頁(yè)存儲(chǔ),且行不能跨頁(yè)存儲(chǔ)的原則即可估算出一個(gè)數(shù)據(jù)表所占的
大致空間。需要160MB。有差不多3/8是浪費(fèi)的。
9.用戶(hù)創(chuàng)建數(shù)據(jù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 煙草廠(chǎng)特殊環(huán)境用電安全規(guī)范
- 旅游公司私企導(dǎo)游聘用合同
- 管理學(xué)校餐飲部員工合同
- 柵欄圍墻鋼結(jié)構(gòu)施工合同范本
- 智能家居房產(chǎn)買(mǎi)賣(mài)合同范本格式
- 質(zhì)量控制與市場(chǎng)營(yíng)銷(xiāo)
- 通信設(shè)備招投標(biāo)管理操作指南
- 2022年大學(xué)林業(yè)工程專(zhuān)業(yè)大學(xué)物理下冊(cè)期中考試試卷-含答案
- 2022年大學(xué)森林資源專(zhuān)業(yè)大學(xué)物理二期中考試試卷D卷-附解析
- 2022年大學(xué)航空航天專(zhuān)業(yè)大學(xué)物理二期末考試試題-含答案
- 封窗安全事故免責(zé)協(xié)議書(shū)范文
- 拆除石籠護(hù)坡施工方案
- 【7道人教版期中】安徽省懷寧縣2023-2024學(xué)年七年級(jí)上學(xué)期期中考試道德與法治試卷(含詳解)
- 管理經(jīng)濟(jì)學(xué)學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 9.2提高防護(hù)能力(課件)-2024-2025學(xué)年統(tǒng)編版道德與法治七年級(jí)上冊(cè)
- 汽車(chē)修理業(yè)務(wù)受理程序、服務(wù)承諾、用戶(hù)抱怨制度
- 2025屆福建省廈門(mén)市外國(guó)語(yǔ)學(xué)校高二數(shù)學(xué)第一學(xué)期期末考試試題含解析
- 貴陽(yáng)一中2025屆高三10月高考適應(yīng)性月考(二) 思想政治試卷(含答案)
- 建筑垃圾消納處置場(chǎng)所建設(shè)可行性研究報(bào)告
- GB/T 44670-2024殯儀館職工安全防護(hù)通用要求
- 期中高頻易錯(cuò)卷(試題)-2024-2025學(xué)年數(shù)學(xué)五年級(jí)上冊(cè)北師大版
評(píng)論
0/150
提交評(píng)論