




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、19 / 17習題11、簡述數據庫系統(tǒng)的特點。 答:數據庫系統(tǒng)的特點有:1)數據結構化在數據庫系統(tǒng)中,采用統(tǒng)一的數據模型,將整個組織的數據組織為一個整體;數據不 再僅面向特定應用,而是面向全組織的;不僅數據內部是結構化的,而且整體是結構化的, 能較好地反映現實世界中各實體間的聯(lián)系。這種整體結構化有利于實現數據共享,保證數據和應用程序之間的獨立性。2)數據共享性高、冗余度低、易于擴充數據庫中的數據能夠被多個用戶、多個應用程序共享。數據庫中相同的數據不會多次 重復出現,數據冗余度降低,并可避免由于數據冗余度大而帶來的數據沖突問題。同時,當應用需求發(fā)生改變或增加時,只需重新選擇不同的子集,或增加數據
2、即可滿足。3)數據獨立性高數據獨立性是由 DBMS的二級映像功能來保證的。數據獨立于應用程序,降低了應用 程序的維護成本。4)數據統(tǒng)一管理與控制數據庫中的數據由數據庫管理系統(tǒng)(DBMS )統(tǒng)一管理與控制,應用程序對數據的訪問均經由DBMS。DBMS提供四個方面的數據控制功能:并發(fā)訪問控制、數據完整性、數據安全性保護、數據庫恢復。2、什么是數據庫系統(tǒng)?答:在計算機系統(tǒng)上引入數據庫技術就構成一個數據庫系統(tǒng)(DataBase System, DBS)。數據庫系統(tǒng)是指帶有數據庫并利用數據庫技術進行數據管理的計算機系統(tǒng)。DBS有兩個基本要素:一是DBS首先是一個計算機系統(tǒng);二是該系統(tǒng)的目標是存儲數據并支
3、持用戶查詢和 更新所需要的數據。3、簡述數據庫系統(tǒng)的組成。答:數據庫系統(tǒng)一般由數據庫、數據庫管理系統(tǒng)(及其開發(fā)工具)、數據庫管理員(DataBase Administrator, DBA )和用戶組成。4、試述數據庫系統(tǒng)的三級模式結構。這種結構的優(yōu)點是什么?答:數據庫系統(tǒng)的三級模式結構是指數據庫系統(tǒng)是由外模式、模式和內模式三級構成,同時包含了二級映像,即外模式 /模式映像、模式/內模式映像,如下圖所示。應用1 I I應用2 I 應用3 I I應用4 I應用 5 I外模式/模式映像I""外模式 AII""外模式 BI_ |_-n'模式模式/內模式映
4、像11模式數據庫數據庫系統(tǒng)的這種結構具有以下優(yōu)點:(1)保證數據獨立性。將外模式與模式分開,保證了數據的邏輯獨立性;將內模式與 模式分開,保證了數據的物理獨立性。(2)有利于數據共享,減少了數據冗余。(3)有利于數據的安全性。不同的用戶在各自的外模式下根據要求操作數據,只能對限定的數據進行操作。(4)簡化了用戶接口。按照外模式編寫應用程序或輸入命令,而不需了解數據庫全局 邏輯結構和內部存儲結構,方便用戶系統(tǒng)。5、什么是數據的物理獨立性與邏輯獨立性?并說明其重要性。 答:(1)數據的物理獨立性是指數據的物理結構(包括存儲結構、存取方式等)的改變,存 儲設備的更換, 物理存儲的更換, 存取方式改變
5、等都不影響數據庫的邏輯結構, 從而不致引 起應用程序的變化。(2)數據的邏輯獨立性是指數據庫總體邏輯結構的改變,如修改數據模式,增加新的 數據類型、改變數據間聯(lián)系等,不需要相應修改應用程序。(3)數據的獨立性使得數據庫中數據獨立于應用程序而不依賴于應用程序,也就是說 數據的邏輯結構、 存儲結構與存取方式的改變不影響應用程序。 相應的, 數據的獨立性也使 得應用程序的編制不再依賴于數據的物理和邏輯結構,提高了應用程序的可移植性與魯棒 性。從理論上說,數據的獨立性可以使數據的組織和應用程序的編制完全分離。6、數據庫管理系統(tǒng)的功能主要有哪幾方面? 答:數據庫管理系統(tǒng)的主要功能包括以下幾個方面:(1)
6、有效地組織、存取和維護數據。( 2)數據定義功能。 DBMS 通過數據定義語言( Data Definition Language,DDL )定 義數據庫的各類數據對象,包括數據的結構、數據約束條件等。( 3)數據操縱功能。 DBMS 提供數據操縱語言( Data Manipulation Language ,DML ), 用戶使用 DML 實現對數據庫中的數據進行查詢、增加、刪除和修改等操作。( 4)數據庫的事務管理和運行管理。 DBMS 提供數據控制語言 (Data Control Language , DCL ),數據庫管理員使用 DCL 實現對數據庫的安全性保護、完整性檢查、并發(fā)控制、
7、數據 庫恢復等數據庫控制功能。(5)數據庫的建立和維護功能。( 6)其他功能。包括:數據庫初始數據輸入與轉換、數據庫轉儲、數據庫重組、數據 庫性能監(jiān)視與分析、 數據通信等, 這些功能通常由 DBMS 提供的實用程序或管理工具完成。系統(tǒng)分析員和數據庫設計人員、應用程序7、數據庫系統(tǒng)的人員主要包括哪些? 答:數據庫系統(tǒng)的人員主要包括:數據庫管理員、 員和最終用戶。8、什么是數據模型? 答:數據模型( Data Model )是一種抽象模型,是對現實世界數據特征的抽象。9、什么是概念模型? E-R 模型的三要素是什么? 答:概念模型是面向用戶的模型, 是現實世界到機器世界的一個中間層次。 其基本特征
8、是按 用戶觀點對信息進行建模。 概念模型是現實世界到信息世界的抽象, 是數據庫設計人員與用 戶進行交流的工具。E-R 模型的三要素為: ( 1)實體( entity) 實體是指客觀存在并可相互區(qū)別的事物。 實體可以是人、 事或物, 也可以是抽象的概念。 例如:一件商品、一個客戶、一份訂單等都是實體。屬性刻畫了實體在某方面的特性。商品類別、商品名稱、生產商等。( 2)屬性( attribute ) 實體通常由若干特征, 每個特征稱為實體的一個屬性。 例如:商品實體的屬性可以有商品編號、E-R 模型中就是實體間的聯(lián)系。例如,訂單就是客( 3)聯(lián)系( relationship ) 現實世界中事物之間
9、的聯(lián)系反映在戶和商品之間的聯(lián)系。10、舉例說明聯(lián)系的三種類型。答:一對一聯(lián)系(1:1):如果對于實體集 A中的任一實體,在實體集 B中至多有一個實體 與之聯(lián)系;反之亦然,則稱實體集 A 與實體集 B 具有一對一聯(lián)系,記為 1: 1。例如:在公 司中, 一個部門只有一個經理, 而一個經理只在一個部門任職, 則部門與經理之間具有一對 一聯(lián)系。一對多聯(lián)系(1: n):如果對于實體集 A中的任一實體,在實體集 B中有n (n> 1)個 實體與之聯(lián)系;而對于實體集 B 中的每一個實體,實體集 A 中至多有一個實體與之聯(lián)系, 則稱實體集A與實體集B具有一對多聯(lián)系,記為 1: n。例如:在公司中,一個
10、部門可有多 個職工,而一個職工只在一個部門任職,則部門與職工之間具有一對多聯(lián)系。多對多聯(lián)系(m: n):如果對于實體集 A中的任一實體,在實體集 B中有n (n1)個 實體與之聯(lián)系;而對于實體集 B中的每一個實體,實體集 A中有m ( m> 1)個實體與之聯(lián) 系,則稱實體集 A與實體集B具有多對多聯(lián)系,記為 m: n。例如:在商品訂購中,一個客 戶可訂購多種商品,而一種商品也可被多個客戶訂購,則客戶與商品之間具有多對多聯(lián)系。即用戶從數據庫中看到的數據11 、什么是邏輯數據模型?邏輯數據模型的三要素是什么? 答:邏輯數據模型是數據庫管理系統(tǒng)呈現給用戶的數據模型, 組織形式。邏輯數據模型的三
11、要素為:( 1 )數據結構 數據結構是對系統(tǒng)靜態(tài)特性的描述, 主要描述數據庫組成對象以及對象之間的聯(lián)系。 數 據結構是刻畫數據模型最重要的方面。 因此在數據庫系統(tǒng)中, 通常按照其數據結構的類型來 命名數據模型。主要的數據模型有層次模型、網狀模型和關系模型。( 2)數據操作數據操作指對數據庫中各種對象 (型) 的實例(值)允許執(zhí)行的操作及有關的操作規(guī)則, 它是對數據庫動態(tài)特性的描述。 數據庫中的數據操作主要分為查詢、 更新兩大類, 其中數據 更新主要是指對數據記錄的增、刪、改。數據模型需要定義這些操作的語義、操作符號、操 作規(guī)則及實現操作的相關語句。( 3)完整性約束完整性約束是指對數據的一組完
12、整性規(guī)則的集合。 完整性規(guī)則是給定的數據模型中數據 及其聯(lián)系所具有的制約和存儲規(guī)則,用以限定符合數據模型的數據庫狀態(tài)以及狀態(tài)的變化, 保證數據的正確、有效、相容。12、簡述關系模型的特點。 答:關系模型主要有以下特點:( 1)關系模型建立在嚴格的數學基礎之上。( 2)數據結構簡單清晰,用戶易懂易用。關系模型的數據結構雖然簡單,但卻能表達 豐富的語義,能夠較好地描述現實世界的實體以及實體間的各種聯(lián)系。( 3)數據物理存取路徑對用戶是透明的,有更高的數據獨立性、更好的數據安全性。習題 2關系、元組、屬性、碼、域、分量、關系模式。 一個關系( relation )指一張二維表。一個元組(tuple)
13、指二維表中的一行。一個屬性(attribute)二維表中的一列,表中每列均有名稱,即屬性名。1、解釋以下術語:答: ( 1)關系: ( 2)元組:( 3)屬性:(4)碼:碼(key)也稱為鍵、關鍵字、關鍵碼,指表中可惟一確定元組的屬性或屬性域: 域( domain )指屬性的取值范圍。 分量: 分量指元組中的一個屬性值。 關系模式: 關系模式是對關系“型”的描述,通常表示為:關系名(屬性組合。(5)(6)1, -(7) 屬性 n)。2、解釋關系數據庫的“型”和“值” 。 答:關系數據庫的型即關系數據庫模式, 是對關系數據庫結構的描述。 關系數據庫模式包括 若干域的定義以及在這些域上定義的若干關
14、系模式。 通常以關系數據庫中包含的所有關系模 式的集合來表示關系數據庫模式。 關系數據庫的值是由關系數據庫模式中的各關系模式在某 一時刻對應的關系的集合。3、解釋空值的含義。 答:在關系元組中允許出現空值,空值表示信息的空缺,即未知的值或不存在值。4、候選碼應滿足哪兩個性質? 答:候選碼應滿足惟一性和最小性兩個性質:(1) 惟一性。對關系 R的任兩個元組,其在屬性集K上的值是不同的。(2) 最小性。屬性集 K=(Ai, Aj,Ak)是最小集,即若刪除 K中的任一屬性,K 都不滿足最小性。5、關系操作的特點是什么? 答:關系操作的特點是集合操作,即操作的對象和結果都是關系。6、基本的關系操作包括
15、哪些? 答:關系模型的基本操作包括查詢和更新兩大類:( 1)數據查詢操作用于對關系數據進行各種檢索。它是一個數據庫最基本的功能,通 過查詢, 用戶可以訪問關系數據庫中的數據。 查詢可以在一個關系內進行, 也可以在多個關 系間進行。關系查詢的基本單位是元組分量,查詢即定位符合條件的元組。( 2)數據更新操作操作包括插入、刪除和修改三種。數據刪除的基本單位為元組,其 功能是將指定關系內的指定元組刪除。數據插入的功能在指定關系中插入一個或多個元組。 數據修改實在一個關系中修改指定的元組屬性值。7、關系代數的運算主要包含哪些? 答:關系代數的運算可分為兩類:( 1)傳統(tǒng)的集合運算。其運算是以元組作為集
16、合中元素來進行的,從關系的“水平” 方向即行的角度進行。包括并、差、交和笛卡爾積。( 2)專門的關系運算。其運算不僅涉及行,也涉及列。這類運算是為數據庫的應用而 引進的特殊運算,包括選擇、投影、連接和除法等。8、什么是數據完整性?如何實現數據完整性?試述關系完整性規(guī)則。 答:數據完整性是指數據庫中的數據在邏輯上的正確性、有效性和相容性。數據完整性是通過定義一系列完整性約束條件, 由 DBMS 負責檢查約束條件來實現的。 關系模型有三類完整性約束規(guī)則:實體完整性、參照完整性和用戶定義的完整性。9、有如下的學生成績數據庫:Student (學號,姓名,專業(yè)名,性別,出生時間,總學分,備注)Cour
17、se (課程號,課程名,開課學期,學時,學分)。關系模式為:StuCourse (學號,課程號,成績)。試用關系代數表示如下查詢:( 1)求專業(yè)名為“計算機科學與技術”的學生學號與姓名;( 2)求開課學期為“ 2”的課程號與課程名;求修讀“計算機基礎”的學生姓名。答:(1)學號,姓名 ( 專業(yè)名 '計算機科學與技術 ' ( Student)課程號,課程名 ( 開課學期 '2' (Course)姓名(Student(學號(StuCourse (課程名計算機基礎'(Course)習題 31、試述 SQL 的特點與功能。答:SQL的特點有:(1) SQL 是一
18、種基于關系代數的數據語言,其理論基礎堅實;(2) SQL 是高度非過程化程度的語言,用戶只要指出“干什么”而無需指出“怎么干”(3) SQL 集數據定義,操縱與控制于一體,構成一個具有獨特風格的一體化語言,此外 它還集聯(lián)機交互與嵌入于一體,使語言能適應廣泛的使用環(huán)境;(4) SQL 語言功能強,它不但能表示關系代數的所有功能,還具有統(tǒng)計,計算,視圖等 其它功能;(5) SQL 數據獨立性強,它所涉及的物理概念少;(6) SQL 語言簡潔,易學易用。SQL 的功能包括:數據定義、數據操縱、數據控制、嵌入式與會話規(guī)則。2、什么是基本表?什么是視圖?二者有何關系與區(qū)別? 答:關系數據庫中的關系在 S
19、QL 中稱為基本表。視圖是從一個或多個基本表(或視圖)導 出的表?;颈砼c視圖都采用二維表格結構,都統(tǒng)稱為表。但基本表中的數據(元組)需要 有數據庫中的物理存儲空間, 而視圖在數據庫中只保存其定義信息, 其數據并不占用存儲空 間,而是來源于定義該視圖的基表。 視圖上的數據操縱命令最終都將轉化成相應基本表上的 操作才能得以實現。3、簡述 SQL 語言的使用方式。答: SQL 語言的使用方式包括:交互式、嵌入式兩類。4、SQL 語句按其功能可分為哪幾類? 答: SQL 語句按其功能可分為四類,分別是:(1) 數據定義:其功能是創(chuàng)建、更新和撤銷模式及其對象。包含的語句動詞主要有: CREATE 、
20、DROP、 ALERT 。SELECT 。INSERT 、(2) 數據查詢:其功能是進行數據庫的數據查詢。包含的語句動詞主要有:(3) 數據操縱:其功能是完成數據庫的數據更新。包含的語句動詞主要有: UPDATE 、 DELETE 。(4) 數據控制:其功能是進行數據庫的授權、事務管理和控制。包含的語句動詞主要有: GRANT 、REVOKE 、 COMMIT 、 RO L LBACK 等。5、SQL 的數據定義主要包括哪幾類對象的定義? 答: SQL 的數據定義包括數據庫模式定義、基本表定義、視圖定義和索引定義四個部分。6、什么是索引?定義索引的目的是什么? 答:數據庫的索引是一個數據表的輔
21、助結構,它注明了表中各行數據所在的存儲位置。查詢是數據庫使用最頻繁的操作, 如何能更快地找到所需數據, 是數據庫的一項重要任務。在數據庫中建立索引是為了提高數據查詢速度。7、什么是聚簇索引?什么是非聚集索引?答:聚簇索引(Clustered Index)對表的物理數據頁中的數據按索引關鍵字進行排序,然后 重新存儲到磁盤上,即聚簇索引與數據是一體的。 非聚簇索引 ( Nonclustered Index )具有完 全獨立于數據的索引結構。8、視圖有哪些優(yōu)點? 答:使用視圖有下列優(yōu)點: 為用戶集中數據, 簡化用戶的數據查詢和處理。 有時用戶所需要的數據分散在多個表 中,定義視圖可將它們集中在一起,
22、從而方便用戶的數據查詢和處理。 屏蔽數據庫的復雜性。用戶不必了解復雜的數據庫中的表結構,并且數據庫表的更 改也不影響用戶對數據庫的使用。 簡化用戶權限的管理。只需授予用戶使用視圖的權限,而不必指定用戶只能使用表 的特定列,也增加了安全性。 便于數據共享。各用戶不必都定義和存儲自己所需的數據,可共享數據庫的數據, 這樣同樣的數據只需存儲一次。 可以重新組織數據以便輸出到其它應用程序中。9、設有學生成績數據庫 XSCJ,其中包含關系如下:Student (學號,姓名,專(1) 學生關系:名為 Stude nt,描述學生信息。關系模式為: 業(yè)名,性別,出生時間,總學分,備注) 。Course (課程
23、號,課程名,(2) 課程關系:名為 Course,描述課程信息。關系模式為: 開課學期,學時,學分) 。(3) 學生選課關系:名為StuCourse,描述學生選課及獲得成績信息。關系模式為: StuCourse (學號,課程號,成績)。查詢專業(yè)名為“計算機科學與技術”的學生學號與姓名; 查詢開課學期為“ 2”的課程號與課程名; 查詢修讀“計算機基礎”的學生姓名; 查詢每個學生已選修課程門數和總平均成績; 查詢所有課程的成績都在 80 分以上的學生姓名、學號; 刪除在 Student, StuCourse 中所有學號以“ 2004”開頭的元組; 在學生數據庫中建立“計算機科學與技術”專業(yè)的學生視
24、圖ComputerStu;在視圖 ComputerStu 中查詢姓“王”的學生情況。試寫出以下操作的 SQL 語句:(1)( 2)( 3) ( 4)( 5) ( 6)( 7)( 8)答:( 1 )SELECTFROMWHERESELECT學號, 姓名Student專業(yè)名 = '計算機科學與技術 ' 課程號 ,課程名CourseFROMWHERE 開課學期 ='2'SELECT 姓名FROM Student a, Course b, StuCourse cWHERE b.課程號=c.課程號 AND a.學號=c.學號 AND b.課程名='計算機基礎
25、9;SELECT 學號,COUNT(*), A VG(成績)FROM StuCourseGROUP BY 學號 SELECT 學號 , 姓名FROM StudentWHERE 學號 IN (SELECT 學號FROM StuCourseGROUP BY 學號HAVING MIN( 成績 ) >=80) DELETE FROM StuCourseWHERE S# LIKE '2004%' DELETE FROM Student7)WHERE S# LIKE '2004%' CREATE VIEW ComputerStuASSELECT *FROM Stude
26、ntWHERE 專業(yè)名 = '計算機 ' SELECT *FROM ComputerStuWHERE 姓名 LIKE ' 王 %'習題 41、數據庫設計的任務是什么 ?答:數據庫設計的基本任務是: 根據一個單位的信息需求, 處理需求和數據庫的支撐環(huán)境 (包 括數據庫管理系統(tǒng)、操作系統(tǒng)和硬件) ,設計出數據庫模式(包括外模式、邏輯(概念)模 式和內模式)以及典型的應用程序。2、數據庫應用系統(tǒng)設計分哪幾個階段? 答:數據庫應用系統(tǒng)設計分六個階段:系統(tǒng)規(guī)劃及需求分析階段, 概念設計階段, 邏輯設計 階段,數據庫物理設計階段,應用程序編碼、調試、試運行階段和數據庫運行維
27、護階段。3、簡述數據庫邏輯設計的任務和步驟。 答:數據庫邏輯設計的任務是: 把數據庫概念設計階段產生的數據庫概念模式轉換成數據庫 管理系統(tǒng)所支持的數據庫邏輯模式。數據庫邏輯設計的主要步驟是:(1)把 E-R 圖轉換成關系模式。(2)對 E-R 圖轉換成后形成的關系模式進行規(guī)范化和優(yōu)化。4、如何把 E-R 圖轉換成關系模式?答:E-R圖轉換成關系模式主要涉及兩方面內容:(1)實體型轉換成關系模式:關系模式中的屬性和鍵碼均與實體集中的屬性和鍵碼一一對 應。(2)聯(lián)系轉換成關系模式,構成連接關系。若聯(lián)系本身有屬性,則成為連接關系的屬性。關鍵是連接關系的鍵:若聯(lián)系為 1, 1,則每個實體型的鍵碼均為其
28、鍵;若聯(lián)系為1: n則n端實體型的鍵碼為其鍵;若聯(lián)系為 m: n則各實體型鍵組合為其鍵。5、為一個圖書館設計一個數據庫,用戶要求數據庫中,對每個借閱者保存讀者的讀者號、 姓名、性別、年齡、單位、電話號碼、電子郵件,對每本書保存書號、書名、作者、出版社,E-R模型,再將其轉對每本被借出的書保存讀者號、借出日期、還書日期。要求:設計出 換為關系模型。圖書館關系模型:(讀者號,姓名,性別,年齡,單位,電話,電子郵件)(書號,書名,作者,單價,出版社)(讀者號,書號,借閱時間,歸還時間)習題51、什么是數據庫建模?數據庫建模的主要內容包括什么?答:在設計數據庫時,對現實世界進行分析、抽象,并從中找出內
29、在聯(lián)系,進而確定數據庫 的結構,這一過程就稱為數據庫建模。數據庫建模主要包括兩部分內容:確定最基本的數據結構;對約束建模(主要是說明 候選碼、主碼和外碼)。2、簡述基本E-R圖的表示方法。答:在基本E-R圖中,數據元素用 矩形表示,屬性用 橢圓表示,實體之間的聯(lián)系用 菱形和 箭頭表示。3、某房屋租賃公司利用數據庫記錄房主的房屋和公司職員的信息。其中房屋信息包括房屋編號、地址、面積、朝向、租金價格。職員的信息包括員工編號、姓名、聯(lián)系的客戶、約定 客戶見面時間、約定客戶看房的編號。E-R圖如下所示,其中的 AH應分別填入什么?Q CD Q CZ千答:A :房屋,B:帶客戶看房,C:職員,D:地址,
30、E:租金價格,F:聯(lián)系的客戶,G : 約定客戶見面時間,H :約定客戶看房編號。4、某大學的系有若干個教研室,每個教研室有若干個教師,每個學生選修若干門課程,每 門課程有若干個學生選修,學生每選修一門課就有一個成績,每個教師講授多門保, 每門課可由多個教師講授,每個名師講授的課程都有由該老師指定的教材及規(guī)定的教室。其中,系有編號、 和學分;答:E-R模型。系名、系主任、辦公室和電話;學生有學號、姓名、性別;課程有課程號、課程名 教師有編號、姓名、性別、年齡和職稱。請畫出該系的5、設計一個適合大學生選課的數據庫,該數據庫應包含學生、教師、系和課程。哪個學生 選了哪門課,哪個教師上了哪門課,學生的
31、成績,一個系提供哪些課程等信息。用E-R圖描述該數據庫。答:習題61、試述下列術語的含義:函數依賴、碼、主屬性、 關系規(guī)范化。答:函數依賴:設R( U)是屬性集U上的關系模式, 任意給定的關系實例。若對于 r中的任意兩個元組 s和 則稱屬性子集X函數決定屬性子集丫,或稱丫函數依賴多值依賴、2NF、3NF、BCNF、4NF、X和丫是U的子集,r是R( U)中 t,當 sX = tX時,就有 sY = tY, 于X。碼:如果關系模式R<U,F>的一個或多個屬性 Ai, 則該組合為關系模式 R的碼:A2,,An的組合滿足如下條件,(1)這些屬性函數決定該關系模式的所有屬性,即AA2.An
32、F UR的所有屬性。X、Y、Z是U的子集,且Z=U-X-Y。U、V,使得:(2) Ai, A2,,An的任何真子集都不能函數決定多值依賴:設R( U)是屬性集U上的一個關系模式,對于R的任何關系r,如果存在兩個元組 S、t,則必然存在兩個元組u、v必在關系r中,則稱丫多值uX=vX, sX=tX, uY=tY,且 uZ= sZ, vY=sY,且 vZ=tZ, 即交換元組s、t在屬性組丫上的值,得到兩個新元組 依賴(Multivalued Dependency )于 X。2NF :對于關系模式 R<U , F>,若R 1NF,且每一個非主屬性完全函數依賴于碼,則 R是第二范式的,記作
33、:R 2NF。3NF :在關系模式R<U , F>中,若不存在這樣的碼 X、屬性組丫和非主屬性Z (Z不包 含于丫),使得X- Y, Y- Z (這里X - Y)成立,則稱R<U , F>是第三范式 的,記作:R 3NF。BCNF :設關系模式 R<U , F> 1NF,若X Y , Y X時,X必含有碼,則 R<U , F>是BC范式的,記作: R<U , F> BCNF。4NF :設FD、MVD分別為定義在關系模式 R<U , D>上的函數依賴集和多值依賴集,D=FD U MVD,若R<U , D> 1NF
34、,且所有非平凡的多值依賴X- Y,其決定因素 X都含有碼,則稱 R<U, D>是第四范式的,記作:R<U , D> 4NF。關系規(guī)范化指通過關系模式分解將一個低級的范式分解為多個高級范式的過程。2、什么是數據的冗余與數據的不一致性?答:數據冗余(data redundancy)是指同一數據在一個或多個數據文件中重復存儲。數據冗 余不僅會占用大量系統(tǒng)存儲資源,造成不必要的開銷,而且更嚴重的是會帶來數據庫操作的異常,對數據庫性能發(fā)揮造成不好的影響。數據庫中同一個數據在不同的地方出現了不同的值被稱為數據的不一致性。3、函數依賴有哪幾種類型?答:函數依賴有三種類型:平凡與非平凡
35、函數依賴、部分與完全函數依賴、傳遞函數依賴。4、 舉例說明如一個關系模式僅為1NF的,存在的異常并分析原因。答:例如學生選課關系模式:StuCourse (學號,姓名,專業(yè),專業(yè)負責人,課程號,課程名,學分,成績),僅為1NF的,存在數據冗余和更新異常。異常產生的原因在于非主屬性 對碼不是完全函數依賴。5、試證明若 R(U) BCNF,則必有 R(U) 3NF。證明:用反證法。設 R(U) BCNF,但R(U)3NF,則有如下兩種可能的情況:(1) 假設R(U)中存在非主屬性 a對碼K為部分函數依賴,即:K Pa( a k )由部分依賴的定義可知:必存在K的真子集由R ( U ) BCNF及B
36、CNF的定義可知:K'這與碼的定義矛盾。所以此假設不成立,即 數依賴。K'使 K'fA ( a K )。K中必包含碼。這說明碼K中含有另一個碼R(U)中不存在非主屬性 a對碼K為部分函(2)假設R(U)中存在非主屬性 a傳遞依賴于碼 K,即存在一個屬性集 B,滿足:K-B ,B主K , B*K , BA由B-A及R(U) BCNF可知:B中必含有碼(設為 K )。由碼的定義可得:K'U ,因為B K , K U,故BK。這與B+|k相矛盾。由上可知,假設不成立,故R(U) 3NF。6、 全碼的關系是否必然屬于 3NF ?為什么?是否必然屬于 BCNF ?為什么?
37、答:全碼的關系必然屬于 3NF。因為3NF要求關系范式滿足 1NF,并且不存在非主屬性對 碼的部分和傳遞函數依賴。全碼的關系不存在非主屬性,故它是3NF的。它也必然屬于BCNF,因為BC范式要求每個決定因子都包含碼,而全碼的關系只有一個決定因子,即關 系模式所包含的所有屬性。(1)R(A,B,C,D),F: BD ,ABC (2)R(A ,B,C),F: A B,BA ,A C (3)R(A ,B,C,D),F: AC,DB (4)R(A ,B,C,D),F: AC,CDB (1)屬于第范式:。關鍵字A , B,非主屬性D答:7、試問下列關系模式最高屬于第幾范式,并說明理由:不完全依賴于關鍵字
38、。(2) BCNF。因為它的每個函數依賴的決定因素都是關鍵字。(3) 屬于第一范式。關鍵字A , D,非主屬性C , B不完全依賴于關鍵字。(4) 屬于第一范式。關鍵字A , D,非主屬性B不完全依賴于關鍵字。8、建立一個關于系、學生、班級、學會等信息的關系數據庫。描述學生的屬性有:學號、姓名、系名、班號 描述班級的屬性有:班號、專業(yè)名、系名、人數、入校年份 描述系的屬性有:系名、系辦公室地點、職工人數、學生人數 描述學會的屬性有:學會名、成立年份、地點、人數 有關語義如下:一個系有若干專業(yè), 每個專業(yè)每年只招一個班,每個班有若干學生。每 個學生可參加若干學會,每個學會有若干學生。學生參加某學
39、會有一個入會年份。給出關系模式,寫出每個關系模式的函數依賴集。 指出每個關系模式的候選碼。每個關系模式最高已經達到第幾范式?為什么?如果關系模式不屬于 3NF,將其分解成3NF模式集。試回答下列問題:(1)(2)(3)(4)S (S#, Sname, Sdept, Sclass)Sde pt,S# Sclass, SclassSdept函數依賴:S#Sname; S#C(C#, Sspec,Sde pt,num, Date)函數依賴:C#Sspec, C#Sde pt,C3 num, C# Date,(Ss pecQate) C#,SspecSde ptD(D#, DName , Dnum ,
40、 num)函數依賴:D#DName, D#Dnum, D# nump答:(1)關系模式有:Des, P#學生入會Pnum(P#, Year, Des, Pnum) 函數依賴:P#Year, P#Ent (S#, P#, SPY ear) 函數依賴:(S#, P#)SP Year(2) 每個模式的候選碼分別是:S#、C#、D#、P#、(S#,P#)(3) 每個模式達到的最高范式:S -2NF,存在非主屬性 Sdept對候選碼S#的傳遞函數依賴;C 2NF,存在非主屬性 Sdept對候選碼C#的傳遞函數依賴;D 3NF,不存在非主屬性對候選碼的部分獲傳遞函數依賴;P 3NF,不存在非主屬性對候選碼
41、的部分獲傳遞函數依賴;Ent3NF,不存在非主屬性對候選碼的部分獲傳遞函數依賴。(答 D 、P、Ent 為 BCNF 也正確)4)對 S 和 C 模式進行分解:S1(S#,Sname,Sdept) S2(Sclass,Sdept)C1(C#,Sspec,num,Date) C2(Sspec,Sdept)習題 71、兩個主要的數據庫訪問通用接口是什么?答: ODBC (Open DataBase Connectivity ,開放數據庫連接)和JDBC( Java DataBaseConnectivity , Java 數據庫連接),它們提供對數據庫訪問的調用級接口。2、T-SQL 函數分為哪兩類
42、? 答:內置函數、用戶自定義函數。3、T-SQL 內置函數有哪幾類?什么是確定型函數?什么是非確定型函數?答:T-SQL內置函數包括三類: 行集(Rowset)函數、聚合(Aggregate)函數和標量(Scalar) 函數。確定型函數是指每次使用特定的輸入值集調用該函數時,總是返回相同的結果。 而非確定型函數是指每次使用特定的輸入值集調用時,可能返回不同的結果。4、T-SQL 中用戶自定義函數的創(chuàng)建、修改、刪除語句分別是什么? 答:創(chuàng)建用戶定義函數使用 CREATE FUNCTION 語句,利用 ALTER FUNCTION 語句對用 戶定義函數進行修改,用 DROP FUNCTION 語句
43、刪除用戶定義函數。5、什么是游標? SQL Server 對游標的使用要求遵循何種順序?游標操作語句有哪些? 答:游標可看作一種特殊的指針, 它與某個查詢結果集相聯(lián)系, 可以指向結果集的任意位置, 以便對指定位置的數據進行處理。 使用游標可以在查詢數據的同時對數據進行處理。 游標提 供了對一個結果集進行逐行處理的能力。SQL Server 對游標的使用要遵循以下順序: 聲明游標 打開游標 讀取數據 關閉游標 釋 放游標。游標操作語句有: DECLARE CURSOR 語句(聲明游標) 、 OPEN 語句 (打開游標) 、 FETCH 語句(讀取游標) 、 CLOSE 語句(關閉游標) 、 DE
44、ALLOCATE 語句(釋放游標) 。SQL 程序,它是一種封裝重復任務的方6、什么是存儲過程?存儲過程有哪些優(yōu)點? 答:存儲過程是存儲在服務器上的一組預先定義的 法。存儲過程可以被反復調用,便于共享及維護。使用存儲過程的優(yōu)點主要有: 存儲過程在服務器端運行,執(zhí)行效率高。 存儲過程執(zhí)行一次后, 其執(zhí)行規(guī)劃就駐留在高速緩沖存儲器,在以后的操作中, 只需從高速緩沖存儲器中調用已編譯好的二進制代碼執(zhí)行,提高了系統(tǒng)性能。 確保數據庫的安全。 使用存儲過程可以完成所有數據庫操作,并可通過編程方式控制上述操作對數據庫信息訪問的權限。 自動完成需要預先執(zhí)行的任務。 存儲過程可以在系統(tǒng)啟動時自動執(zhí)行, 而不必
45、在系統(tǒng) 啟動后再進行手工操作,大大方便了用戶的使用,可以自動完成一些需要預先執(zhí)行的任務。7、SQL Server 中定義和執(zhí)行存儲過程的語句分別是什么?EXECUTE 。答:定義存儲過程的語句是 CREATE PROCEDURE,執(zhí)行存儲過程的命令是8、什么是觸發(fā)器?觸發(fā)器有哪些特點? 答:觸發(fā)器是由一組 SQL語句構成的,觸發(fā)器是自動執(zhí)行的,當有操作影響到觸發(fā)器保護 的數據時,觸發(fā)器自動執(zhí)行。觸發(fā)器的主要特點有: 觸發(fā)器自動執(zhí)行。在對表中數據進行了修改后立即被激活自動執(zhí)行。 觸發(fā)器能夠對數據庫中的相關表進行級聯(lián)更改。觸發(fā)器是基于表創(chuàng)建的,但可以針 對多個表進行操作,實現對相關表的級聯(lián)更改。C
46、HECK約束不允許引用 觸發(fā)器可實現比CHECK約束更為復雜的數據完整性約束。其他表中的列來完成檢查工作,而觸發(fā)器可以。 同一個表中可使用多個觸發(fā)器,即使同一類型的觸發(fā)器,也可使用多個。9、簡述ODBC的體系結構。答:ODBC是一個分層體系結構,由四部分構成: ODBC數據庫應用程序(appiication )、驅 動程序管理器(driver manager)、DBMS 驅動程序(DBMS driver )、數據源(data source)。 如下圖所示。耳;=2其他數據源-應用程序ODBC驅動程序ODBC驅動程序1 ODBC驅動程序ODBC驅動程序管理器I*4士三-SQL Server數據源
47、'- Oracle數據源10、畫出ADO的對象層次結構圖。答:ADO是采用層次框架實現的,其對象層次結構如下圖所示。ConnectionErrors彳 PropertiesiProp ertyCommandErrorPropertiesJProp ertyParametersParameterRecordSetPropertiesJProp ertyFieldFieldsiProp erty11、圖示ADO.NET的體系結構。 答:習題8總體設計、詳細設計、編碼與單元測試、1、簡述數據庫應用系統(tǒng)的開發(fā)過程。 答:數據庫應用系統(tǒng)的開發(fā)過程一般包括需求分析、 系統(tǒng)測試與交付、系統(tǒng)使用與維護
48、等階段。2、數據庫應用系統(tǒng)的體系結構主要有哪些?答:數據庫應用系統(tǒng)的體系結構是指數據庫應用系統(tǒng)各組成部件之間的結構關系??煞譃?種模式,即單用戶模式、主從式多用戶模式、客戶機/服務器模式(Client/Server,C/S)和Web 瀏覽器 /服務器模式(Browser/Server,B/S )。3、目前數據庫市場上有哪些主流廠商和產品?Oracle、IBM、答:數據庫廠商:Oracle、IBM、Microsoft、Sybase等。主流大型關系數據庫管理系統(tǒng)產品SQL Server、Oracle、Sybase DB2,小型的關系數據庫管理系統(tǒng) MySQL、Access和VFP等。4、在VB中使
49、用ADO對象訪問數據庫的一般流程是什么?答:使用ADO對象訪問數據庫的一般流程是:連接到數據源(如 SQL Server)給出訪問數據源的命令及參數執(zhí)行命令處理返回的結果集關閉連接。5、Co nn ection、Recordset和Comma nd這三個 ADO對象的主要作用是什么?答:Conn ection對象用于建立數據源的連接。Recordset對象實現結果集的封裝,其數據結構可認為與表相同,Recordset (若不為空)中的數據在邏輯上由行和列組成。Comma nd對象的主要功能是讓服務器執(zhí)行SQL命令或服務器端的存儲過程。.NET Framework 類庫的主要作用分別是提供內存管
50、理、線程管理、安全管理、.NET Framework 類庫的主要作用是提6、.NET 框架結構中通用語言運行環(huán)境( CLR )和 什么? 答:通用語言運行環(huán)境 CLR 的作用是負責執(zhí)行程序, 異常處理、通用類系統(tǒng)與生命周期監(jiān)控等核心服務。 供許多類與接口,包括 ADO.NET 、XML 、IO 、網絡、調試、安全和多線程等。習題 91、什么是數據庫保護?它有哪些內容? 答:從數據庫管理系統(tǒng)角度出發(fā)來保護數據庫系統(tǒng)中數據, 使之不至于受到非法訪問或破壞, 這稱為數據庫保護。 數據庫保護的內容有: 安全性保護, 完整性保護, 并發(fā)控制和故障恢復。2、什么是數據庫的安全性?常用的保護措施有哪些? 答
51、:數據庫的安全性保護是指防止非法使用數據庫。 包括防止非法用戶使用數據庫和合法用 戶非法使用數據庫。常用的保護措施有: (1)使用權的鑒別。常用的鑒別方法有口令和函數計算法兩種。(2)使用范圍限制。一般可用外模式的方法予以限制,用戶可以在外模式定義范圍內訪問 數據, 而外模式沒有定義的那些數據庫中的數據, 用戶無法使用。 在關系數據庫中則可用視 圖方法予以限制。(3)訪問控制權鑒別。 進一步限制每一個用戶在每一個數據對象上可以執(zhí)行的操作的類型。 以關系數據庫系統(tǒng)為例,操作對象有:關系,元組,屬性,可以使用的操作類型有:查詢, 插入,修改,刪除以及它們的一些組合情況。(4)安全審計。審計用于跟蹤
52、和記錄所選用戶對數據庫的操作。通過審計可以跟蹤、記錄 可疑的數據庫操作, 并將結果記錄在審計日志中。 根據審計日志記錄可對非法訪問進行事后 分析與追查。3、有哪些常用的數據庫完整性保護措施? 答:常用的數據庫完整性保護措施有:完整性約束定義與檢查機制、觸發(fā)器。4、什么是事務?事務的ACID 性質指什么?答:事務(Transaction)是一系列數據庫操作的有限序列,是數據庫的基本執(zhí)行單元。事務的ACID性質指原子性(A )、一致性(C)、隔離性(I)和持久性(D )。( 1)原子性( Atomicity ) 事務必須是數據庫的邏輯工作單元, 即事務中包括的諸操作要么全執(zhí)行, 要么全不執(zhí)行。( 2)一致性( Consistency )事務在完成時, 必須使所有的數據都保持一致狀態(tài)。 如果數據庫系統(tǒng)因運行中發(fā)生故障, 有些事務尚未完成就被迫中斷, 這些未完成的事務對數據庫所做的修改有一部分已寫入物理 數據庫,此時數據庫處于一種不一致的狀態(tài)。( 3)隔離性( Isolation )一個事務的執(zhí)行不能被其它事務干擾。 即一個事務內部的操作及使用的數據對其它并發(fā) 事務是隔離的, 并發(fā)執(zhí)行的各個事務間不能互相干擾。 事務查看數據時數據所處的狀態(tài), 要 么
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司房租租憑合同范本
- 勞動安全協(xié)議合同范本
- 包子店加盟簽約合同范本
- 人工打草合同范本
- 沖孔加工銷售合同范本
- 2024年河南省直第三人民醫(yī)院招聘筆試真題
- 第14課《回憶我的母親》教學設計 2024-2025學年統(tǒng)編版語文七年級上冊
- 力工合同范例
- 中國鐵建合同范本
- 包月工作合同范本
- 菌菇智慧方艙栽培及食用菌菌包中心生產基地項目可行性研究報告
- 生物工程畢業(yè)設計開題報告
- 園林垃圾處理政策解讀
- GT 42456-2023 工業(yè)自動化和控制系統(tǒng)信息安全 IACS組件的安全技術要求
- 《胎心監(jiān)護及判讀》
- 養(yǎng)老院管理-護理員-績效考核表
- 奧爾夫技能考核方案
- 指數函數及其圖像與性質教案
- BPO糊的生產工藝
- 裝飾裝修工程安全管理培訓學習
- 非煤露天礦山風險辨識與評估及風險控制
評論
0/150
提交評論