第一章 數(shù)據(jù)庫基礎知識本章以概念為主,主要是了解數(shù)據(jù)庫的基本概念,數(shù)據(jù)庫技術的發(fā)展,數(shù)據(jù)模型,重點是關系型數(shù)據(jù)。
第一節(jié):信息,數(shù)據(jù)與數(shù)據(jù)處理一、信息與數(shù)據(jù):1、信息:是現(xiàn)實世界事物的存在方式或運動狀態(tài)的反映。或認為,信息是一種已經(jīng)被加工為特定形式的數(shù)據(jù)。
信息的主要特征是:信息的傳遞需要物質(zhì)載體,信息的獲取和傳遞要消費能量;信息可以感知;信息可以存儲、壓縮、加工、傳遞、共享、擴散、再生和增值2、數(shù)據(jù):數(shù)據(jù)是信息的載體和具體表現(xiàn)形式,信息不隨著數(shù)據(jù)形式的變化而變化。數(shù)據(jù)有文字、數(shù)字、圖形、聲音等表現(xiàn)形式。
3、數(shù)據(jù)與信息的關系:一般情況下將數(shù)據(jù)與信息作為一個概念而不加區(qū)分。二、數(shù)據(jù)處理與數(shù)據(jù)管理技術:1、數(shù)據(jù)處理:數(shù)據(jù)處理是對各種形式的數(shù)據(jù)進行收集、存儲、加工和傳輸?shù)然顒拥目偡Q。
2、數(shù)據(jù)管理:數(shù)據(jù)收集、分類、組織、編碼、存儲、檢索、傳輸和維護等環(huán)節(jié)是數(shù)據(jù)處理的基本操作,稱為數(shù)據(jù)管理。數(shù)據(jù)管理是數(shù)據(jù)處理的核心問題。
3、數(shù)據(jù)庫技術所研究的問題不是如何科學的進行數(shù)據(jù)管理。4、數(shù)據(jù)管理技術的三個階段:人工管理,文件管理和數(shù)據(jù)庫系統(tǒng)。
第二節(jié):數(shù)據(jù)庫技術的發(fā)展一、數(shù)據(jù)庫的發(fā)展:數(shù)據(jù)庫的發(fā)展經(jīng)歷了三個階段:1、層次型和網(wǎng)狀型: 代表產(chǎn)品是1969年IBM公司研制的層次模型數(shù)據(jù)庫管理系統(tǒng)IMS。2、關系型數(shù)據(jù)型庫: 目前大部分數(shù)據(jù)庫采用的是關系型數(shù)據(jù)庫。
1970年IBM公司的研究員E.F.Codd提出了關系模型。其代表產(chǎn)品為sysem R和Inges。
3、第三代數(shù)據(jù)庫將為更加豐富的數(shù)據(jù)模型和更強大的數(shù)據(jù)管理功能為特征,以提供傳統(tǒng)數(shù)據(jù)庫系統(tǒng)難以支持的新應用。它必須支持面向?qū)ο?,具有開放性,能夠在多個平臺上使用。
二、數(shù)據(jù)庫技術的發(fā)展趨勢:1、面向?qū)ο蟮姆椒ê图夹g對數(shù)據(jù)庫發(fā)展的影響:數(shù)據(jù)庫研究人員借鑒和吸收了面向?qū)ρ姆椒ê图夹g,提出了面向?qū)ο髷?shù)據(jù)模型。2、數(shù)據(jù)庫技術與多學科技術的有機組合:3、面向?qū)iT應用領域的數(shù)據(jù)庫技術三、數(shù)據(jù)庫系統(tǒng)的組成:數(shù)據(jù)庫系統(tǒng)(DBS)是一個采用數(shù)據(jù)庫技術,具有管理數(shù)據(jù)庫功能,由硬件、軟件、數(shù)據(jù)庫及各類人員組成的計算機系統(tǒng)。
1、數(shù)據(jù)庫(DB):數(shù)據(jù)庫是以一定的組織方式存放于計算機外存儲器中相互關聯(lián)的數(shù)據(jù)集合,它是數(shù)據(jù)庫系統(tǒng)的核心和管理對象,其數(shù)據(jù)是集成的、共享的以及冗余最小的。2、數(shù)據(jù)庫管理系統(tǒng)(DBMS):數(shù)據(jù)庫管理系統(tǒng)是維護和管理數(shù)據(jù)庫的軟件,是數(shù)據(jù)庫與用戶之間的界面。
作為數(shù)據(jù)庫的核心軟件,提供建立、操作、維護數(shù)據(jù)庫的命令和方法。3、應用程序:對數(shù)據(jù)庫中數(shù)據(jù)進行各種處理的程序,由用戶編寫。
4、計算機軟件:5、計算機硬件:包括CPU、內(nèi)存、磁盤等。要求有足夠大的內(nèi)存來存放操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的核心模塊以及數(shù)據(jù)庫緩沖;足夠大的磁盤能夠直接存取和備份數(shù)據(jù);比較主的通道能力;支持聯(lián)網(wǎng),實現(xiàn)數(shù)據(jù)共享。
6、各類人員。四、數(shù)據(jù)庫系統(tǒng)的特點:1、數(shù)據(jù)共享:2、面向全組織的數(shù)據(jù)結(jié)構(gòu)化:數(shù)據(jù)不再從屬于一個特定應用,而是按照某種模型組織成為一個結(jié)構(gòu)化的整。
它描述數(shù)據(jù)要身的特性,也描述數(shù)據(jù)與數(shù)據(jù)之間的種種聯(lián)系。3、數(shù)據(jù)獨立性:4、可控數(shù)據(jù)冗余度:5、統(tǒng)一數(shù)據(jù)控制功能:數(shù)據(jù)安全性控制:指采取一定的安全保密措施確保數(shù)據(jù)庫中的數(shù)據(jù)不被非法用戶存取而造成數(shù)據(jù)的泄密和破壞;數(shù)據(jù)完整性控制:是指數(shù)據(jù)的正確性、有效性與相容性。
并發(fā)控制:多個用戶對數(shù)據(jù)進行存取時,采取必要的措施進行數(shù)據(jù)保護;數(shù)據(jù)恢復:系統(tǒng)能進行應急處理,把數(shù)據(jù)恢復到正確狀態(tài)。第三節(jié):數(shù)據(jù)模型一、數(shù)據(jù)組織:關系型數(shù)據(jù)庫中的數(shù)據(jù)層次如下:1、數(shù)據(jù)項(field):又稱字段,用于描述實體的一個屬性,是數(shù)據(jù)庫的基本單位。
一般用屬性名作項名;2、記錄(Record):又稱為結(jié)點,由若干個數(shù)據(jù)項組成,用于描述一個對象;3、文件(File):由若干個記錄組成;4、數(shù)據(jù)庫(Data Base):由邏輯相關的文件組成。二、數(shù)據(jù)模型:數(shù)據(jù)的組織形式稱為數(shù)據(jù)模型,它決定 數(shù)據(jù)(主要是結(jié)點)之間聯(lián)系的表達方式。
主要包括層次型、網(wǎng)狀型、關系型和面向?qū)ο笮退姆N。層次型和網(wǎng)狀型是早期的數(shù)據(jù)模型,又稱為格式化數(shù)據(jù)系統(tǒng)數(shù)模型。
以上四種模型決定了四種類型的數(shù)據(jù)庫:層次數(shù)據(jù)庫系統(tǒng),網(wǎng)狀數(shù)據(jù)庫系統(tǒng),關系型數(shù)據(jù)庫系統(tǒng)以及面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。目前微機上使用的主要是關系型數(shù)據(jù)庫。
1、層次型:是以記錄為結(jié)點的有向樹;圖如教材P7圖1--22、網(wǎng)狀型:樹的集合,它的表示能力以及精巧懷強于層次型,但獨立性下降。3、關系型:在關系型中,數(shù)據(jù)被組織成若干張二維表,每張表稱為一個關系。
一張表格中的一列稱為一個“屬性”,相當于記錄中的一個數(shù)據(jù)項(或稱為字段),屬性的取值范圍稱為域。表格中的一行稱為一個“元組”,相當于記錄值。
可用一個或若干個屬性集合的值標識這些元組,稱為“關鍵字”。每一行對應的屬性值叫做一個分量。
表格的框架相當于記錄型,一個表格數(shù)據(jù)相當于一個同質(zhì)文件。所有關系由關系的框架和若干元組構(gòu)成,或者說關系是一張二維表。
關系型。
一 事務處理介紹 事務是這樣一種機制,它確保多個SQL語句被當作單個工作單 元來處理。
事務具有以下的作用: * 一致性:同時進行的查詢和更新彼此不會發(fā)生沖突,其他 用戶不會看到發(fā)生了變化但尚未提交的數(shù)據(jù)。 * 可恢復性:一旦系統(tǒng)故障,數(shù)據(jù)庫會自動地完全恢復未完 成的事務。
二 事務與一致性 事務是完整性的單位,一個事務的執(zhí)行是把數(shù)據(jù)庫從一個一 致的狀態(tài)轉(zhuǎn)換成另一個一致的狀態(tài)。因此,如果事務孤立執(zhí)行時 是正確的,但如果多個事務并發(fā)交錯地執(zhí)行,就可能相互干擾, 造成數(shù)據(jù)庫狀態(tài)的不一致。
在多用戶環(huán)境中,數(shù)據(jù)庫必須避免同 時進行的查詢和更新發(fā)生沖突。這一點是很重要的,如果正在被 處理的數(shù)據(jù)能夠在該處理正在運行時被另一用戶的修改所改變, 那么該處理結(jié)果是不明確的。
不加控制的并發(fā)存取會產(chǎn)生以下幾種錯誤: 1 丟失修改(lost updates) 當多個事務并發(fā)修改一個數(shù)據(jù)時,不加控制會得出錯誤的結(jié) 果,一個修改會覆蓋掉另一個修改。 2 讀的不可重復性 當多個事務按某種時間順序存取若干數(shù)據(jù)時,如果對并發(fā)存 取不加控制,也會產(chǎn)生錯誤。
3 臟讀(DIRDY DATA),讀的不一致性 4 光標帶來的當前值的混亂 事務在執(zhí)行過程中它在某個表上的當前查找位置是由光標表 示的。光標指向當前正處理的記錄。
當處理完該條記錄后,則指 向下一條記錄。在多個事務并發(fā)執(zhí)行時,某一事務的修改可能產(chǎn) 生負作用,使與這些光標有關的事務出錯。
5 未釋放修改造成連鎖退出 一個事務在進行修改操作的過程中可能會發(fā)生故障,這時需 要將已做的修改回退(Rollback)。如果在已進行過或已發(fā)現(xiàn)錯 誤尚未復原之前允許其它事務讀已做過修改(臟讀),則會導致 連鎖退出。
6 一事務在對一表更新時,另外的事務卻修改或刪除此表的 定義。 數(shù)據(jù)庫會為每個事務自動地設置適當級別的鎖定。
對于前面 講述的問題:臟讀、未釋放修改造成的連鎖退出、一事務在對一 表更新時另外的事務卻修改或刪除此表的定義,數(shù)據(jù)庫都會自動 解決。而另外的三個問題則需要在編程過程中人為地定義事務或 加鎖來解決。
三 事務和恢復 數(shù)據(jù)庫本身肩負著管理事務的責任。事務是最小的邏輯工作 單元,在這個工作單元中,對數(shù)據(jù)庫的所有更新工作,要么必須 全部成功,要么必須全部失?。ɑ赝耍?。
只要應用程序指定了某 段程序為一個事務并做了相應的處理(提交或回退),數(shù)據(jù)庫系 統(tǒng)會自動維護事務本身的特性。 四 ORACLE數(shù)據(jù)庫的事務定義 ORACLE事務從COMMIT、ROLLBACK、連接到數(shù)據(jù)庫或開始第一 條可執(zhí)行的SQL語句時開始,到一條COMMIT、ROLLBACK語句或退出 數(shù)據(jù)庫時結(jié)束。
如果在一個事務中包含DDL語句,則在DDL語句的 前后都會隱含地執(zhí)行COMMIT語句,從而開始或結(jié)束一個事務。 如果一個事務由于某些故障或者由于用戶改變主意而必須在 提交前取消它,則數(shù)據(jù)庫被恢復到這些語句和過程執(zhí)行之前的狀 態(tài)。
利用ROLLBACK語句可以在COMMIT命令前隨時撤消或回退一個 事務??梢曰赝苏麄€事務,也可以會退部分事務,但是不能回退 一個已經(jīng)被提交的事務。
回退部分事務的ROLLBACK命令為: ROLLBACK to savepoint 存儲點名 存儲點是用戶放入事務中的標記,用來表示一個可被回退的 位置。存儲點通過在事務中放入一個SAVEPOINT命令而被插入。
該 命令的語法是: SAVEPOINT 存儲點名 如果在ROLLBACK語句中沒有給出存儲點名,則整個事務被回 退。 五 SYBASE數(shù)據(jù)庫的事務定義 SYBASE通過使用BEGIN TRANsaction和COMMIT TRANsaction命令指 示SQL將任意數(shù)目的語句作為一個單元來處理。
ROLLBACK TRANsaction 命令則允許用戶恢復到事務的開始,或恢復到事務內(nèi)部已經(jīng)被用SAVE TRANsaction命令定義的存儲點上。 BEGIN TRANsaction和COMMIT TRANsaction能夠包含任意數(shù)目的SQL 語句和存儲過程,方法很簡單: BEGIN TRANsaction [事務名稱] COMMIT TRANsaction 如果一個事務由于某些故障或者由于用戶改變主意而必須在提交 前取消它,則數(shù)據(jù)庫被恢復到這些語句和過程執(zhí)行之前的狀態(tài)。
利用ROLLBACK TRANsaction命令可以在COMMIT TRANsaction命令 前隨時回退一個事務??梢曰赝苏麄€事務,也可以回退部分事務,但 是不能回退一個已經(jīng)被提交的事務。
ROLLBACK TRANsaction命令為: ROLLBACK TRANsaction [事務名|存儲點名] 存儲點名是用戶放入事務中的標記,用來表示一個可以被回退的 位置。存儲點名通過在事務中放入一個SAVE TRANsaction命令而被插 入。
該命令的句法是: SAVE TRANsaction 存儲點名 如果在ROLLBACK TRANsaction中沒有給出存儲點名或事務名,則 事務被回退到批處理中的第一個BEGIN TRANsaction語句處。
第
1
章練習題答案
一、選擇題
題號
1
2
3
4
5
6
7
8
9
10
答案
B
A
A
D
C
B
B
B
A
A
二、填空題
1
、數(shù)據(jù)定義、數(shù)據(jù)操縱
2
、文件系統(tǒng)階段、數(shù)據(jù)庫系統(tǒng)階段
3
、屬性、字段、元組、記錄
4
、關鍵字
5
、域
6
、屬性、屬性到域的映象
7
、關系、關系
8
、投影
9
、選擇運算、投影運算
10
、連接運算、自然連接
三、簡答題
1
、答:數(shù)據(jù)庫(
DataBase
)是被長期存放在計算機內(nèi)、有組織的、可以表現(xiàn)為多種形式的
可共享的數(shù)據(jù)集合。
數(shù)據(jù)庫管理系統(tǒng)(
DataBase Management System
簡稱
DBMS
)是計算機系統(tǒng)軟件,它的職
能是有效地組織和存儲數(shù)據(jù)、
獲取和管理數(shù)據(jù),
接受和完成用戶提出的訪問數(shù)據(jù)的各種請求。
數(shù)據(jù)庫系統(tǒng)是指擁有數(shù)據(jù)庫技術支持的計算機系統(tǒng),
它可以實現(xiàn)有組織地、
動態(tài)地存儲大量
相關數(shù)據(jù),提供數(shù)據(jù)處理和信息資源共享服務。
數(shù)據(jù)庫系統(tǒng)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),
一般由數(shù)據(jù)庫、
數(shù)據(jù)庫管理系統(tǒng)
(及
其開發(fā)工具)
、應用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。
2
、答:關系是一張二維表,每個關系有一個關系名。在計算機中,一個關系可以存儲為一
個文件。在
Visual FoxPro
中,一個關系就是一個表文件。
元組是二維表中水平方向的行,有時也叫做一條記錄。
屬性是二維表中垂直方向的列,有時也叫做一個字段。
3
、答:數(shù)據(jù)庫系統(tǒng)由四部分組成:硬件系統(tǒng)、系統(tǒng)軟件、數(shù)據(jù)庫應用系統(tǒng)和各類人員。
4
、答:常用的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和關系模型。
層次模型的特點是:
形狀象一棵倒立的樹,
有且僅有一個結(jié)點無父結(jié)點,
這個結(jié)點稱為根結(jié)
點,其他結(jié)點有且僅有一個父結(jié)點。
網(wǎng)狀模型的特點是:
形狀象一張網(wǎng),
允許一個以上的結(jié)點無父結(jié)點,
一個結(jié)點可以有多于一
個的父結(jié)點。
關系模型的特點是:
在關系中,
數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表。
該表滿足每一列中的分量是
類型相同的數(shù)據(jù);
列的順序可以是任意的;
行的順序可以是任意的;
表中的分量是不可再分
割的最小數(shù)據(jù)項,即表中不允許有子表;表中的任意兩行不能完全相同。
層次模型對具有一對多層次關系的數(shù)據(jù)描述非常自然、
直觀、
容易理解;
網(wǎng)狀模型主要是描
述具有多對多關系的數(shù)據(jù)。
關系模型具有嚴格的數(shù)學理論為基礎,
在描述數(shù)據(jù)時使用簡單靈
活、數(shù)據(jù)獨立性強等特點,而被公認為是理想的數(shù)據(jù)的組織方式。
5
、答:不是,只有具備以下幾個要求的二維表才被稱為是關系:
(
1
)每一列中的分量是類型相同的數(shù)據(jù);
(
2
)列的順序可以是任意的;
附上出處鏈接:
1第一章習題參考答案1.選擇題(1)數(shù)據(jù)庫(DB)、數(shù)據(jù)庫系統(tǒng)(DBS)、數(shù)據(jù)庫管理系統(tǒng)(DBMS)三者之間的關系是(A)。
A.DBS包括DB和DBMSB.DBMS包括DB和DBSC.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS(2)設有部門和職員兩個實體,每個職員只能屬于一個部門,一個部門可以有多名職員,則部門與職員實體之間的聯(lián)系類型是(B)。A.m:nB.1:mC.m:kD.1:1(3)對于“關系”的描述,正確的是(D)。
A.同一個關系中允許有完全相同的元組B.同一個關系中元組必須按關鍵字升序存放C.在一個關系中必須將關鍵字作為該關系的第一個屬性D.同一個關系中不能出現(xiàn)相同的屬性名(4)E-R圖用于描述數(shù)據(jù)庫的(A)。A.概念模型B.數(shù)據(jù)模型C.存儲模型D.邏輯模型(5)在關系模型中,一個關鍵字(C)。
A.可以由多個任意屬性組成B.至多由一個屬性組成C.可以由一個或者多個其值能夠唯一表示該關系模式中任何元組的屬性組成D.可以由一個或者多個任意屬性組成(6)現(xiàn)有如下關系:患者(患者編號,患者姓名,性別,出生日期,單位)醫(yī)療(患者編號,患者姓名,醫(yī)生編號,醫(yī)生姓名,診斷日期,診斷結(jié)果)其中,醫(yī)療關系中的外關鍵字是(A)。A.患者編號B.患者姓名C.患者編號和患者姓名D.醫(yī)生編號和患者編號(7)一個關系只有一個(D)。
A.候選關鍵字B.外部關鍵字C.組合關鍵字D.主關鍵字(8)下列標識符可以作為局部變量使用的是(C)。A.[@Myvar]B.MyvarC.@MyvarD.@Myvar(9)Transact-SQL支持的一種程序結(jié)構(gòu)語句是(A)。
A.BEGIN…ENDB.IF…THEN…ELSEC.DOCASED.DOWHILE(10)字符串常量使用(A)作為定界符。A.單引號B.雙引號C.方括號D.花括號2.填空題(1)數(shù)據(jù)庫是在計算機系統(tǒng)中按照一定的方式組織、存儲和應用的(數(shù)據(jù)集合)。
支持數(shù)據(jù)庫各種操作的軟件系統(tǒng)叫(數(shù)據(jù)庫管理系統(tǒng))。由計算機、操作系統(tǒng)、DBMS、數(shù)據(jù)庫、應用程序及有關人員等組成的一個整體叫(數(shù)據(jù)庫系統(tǒng))。
/link?url=_dRWH0N-TOwjiDuRWTF_DqdRZBjChyQK8LPxW 93x0vGixEdWYK。
判斷題:對錯錯錯對對錯對錯對
填空題:1.操作系統(tǒng) 2.order by , group by 3.表,元組,屬性。4.數(shù)據(jù)結(jié)構(gòu),完整性約束 5.關系 6.一對一,一對多,多對多 7.創(chuàng)建,修改,刪除 8.min,sum 9.視圖,虛擬或查詢 10.exec 11. 系統(tǒng)存儲過程,用戶定義存儲過程
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據(jù)《信息網(wǎng)絡傳播權保護條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:4.305秒