一 事務(wù)處理介紹 事務(wù)是這樣一種機(jī)制,它確保多個SQL語句被當(dāng)作單個工作單 元來處理。
事務(wù)具有以下的作用: * 一致性:同時進(jìn)行的查詢和更新彼此不會發(fā)生沖突,其他 用戶不會看到發(fā)生了變化但尚未提交的數(shù)據(jù)。 * 可恢復(fù)性:一旦系統(tǒng)故障,數(shù)據(jù)庫會自動地完全恢復(fù)未完 成的事務(wù)。
二 事務(wù)與一致性 事務(wù)是完整性的單位,一個事務(wù)的執(zhí)行是把數(shù)據(jù)庫從一個一 致的狀態(tài)轉(zhuǎn)換成另一個一致的狀態(tài)。因此,如果事務(wù)孤立執(zhí)行時 是正確的,但如果多個事務(wù)并發(fā)交錯地執(zhí)行,就可能相互干擾, 造成數(shù)據(jù)庫狀態(tài)的不一致。
在多用戶環(huán)境中,數(shù)據(jù)庫必須避免同 時進(jìn)行的查詢和更新發(fā)生沖突。這一點(diǎn)是很重要的,如果正在被 處理的數(shù)據(jù)能夠在該處理正在運(yùn)行時被另一用戶的修改所改變, 那么該處理結(jié)果是不明確的。
不加控制的并發(fā)存取會產(chǎn)生以下幾種錯誤: 1 丟失修改(lost updates) 當(dāng)多個事務(wù)并發(fā)修改一個數(shù)據(jù)時,不加控制會得出錯誤的結(jié) 果,一個修改會覆蓋掉另一個修改。 2 讀的不可重復(fù)性 當(dāng)多個事務(wù)按某種時間順序存取若干數(shù)據(jù)時,如果對并發(fā)存 取不加控制,也會產(chǎn)生錯誤。
3 臟讀(DIRDY DATA),讀的不一致性 4 光標(biāo)帶來的當(dāng)前值的混亂 事務(wù)在執(zhí)行過程中它在某個表上的當(dāng)前查找位置是由光標(biāo)表 示的。光標(biāo)指向當(dāng)前正處理的記錄。
當(dāng)處理完該條記錄后,則指 向下一條記錄。在多個事務(wù)并發(fā)執(zhí)行時,某一事務(wù)的修改可能產(chǎn) 生負(fù)作用,使與這些光標(biāo)有關(guān)的事務(wù)出錯。
5 未釋放修改造成連鎖退出 一個事務(wù)在進(jìn)行修改操作的過程中可能會發(fā)生故障,這時需 要將已做的修改回退(Rollback)。如果在已進(jìn)行過或已發(fā)現(xiàn)錯 誤尚未復(fù)原之前允許其它事務(wù)讀已做過修改(臟讀),則會導(dǎo)致 連鎖退出。
6 一事務(wù)在對一表更新時,另外的事務(wù)卻修改或刪除此表的 定義。 數(shù)據(jù)庫會為每個事務(wù)自動地設(shè)置適當(dāng)級別的鎖定。
對于前面 講述的問題:臟讀、未釋放修改造成的連鎖退出、一事務(wù)在對一 表更新時另外的事務(wù)卻修改或刪除此表的定義,數(shù)據(jù)庫都會自動 解決。而另外的三個問題則需要在編程過程中人為地定義事務(wù)或 加鎖來解決。
三 事務(wù)和恢復(fù) 數(shù)據(jù)庫本身肩負(fù)著管理事務(wù)的責(zé)任。事務(wù)是最小的邏輯工作 單元,在這個工作單元中,對數(shù)據(jù)庫的所有更新工作,要么必須 全部成功,要么必須全部失?。ɑ赝耍?。
只要應(yīng)用程序指定了某 段程序?yàn)橐粋€事務(wù)并做了相應(yīng)的處理(提交或回退),數(shù)據(jù)庫系 統(tǒng)會自動維護(hù)事務(wù)本身的特性。 四 ORACLE數(shù)據(jù)庫的事務(wù)定義 ORACLE事務(wù)從COMMIT、ROLLBACK、連接到數(shù)據(jù)庫或開始第一 條可執(zhí)行的SQL語句時開始,到一條COMMIT、ROLLBACK語句或退出 數(shù)據(jù)庫時結(jié)束。
如果在一個事務(wù)中包含DDL語句,則在DDL語句的 前后都會隱含地執(zhí)行COMMIT語句,從而開始或結(jié)束一個事務(wù)。 如果一個事務(wù)由于某些故障或者由于用戶改變主意而必須在 提交前取消它,則數(shù)據(jù)庫被恢復(fù)到這些語句和過程執(zhí)行之前的狀 態(tài)。
利用ROLLBACK語句可以在COMMIT命令前隨時撤消或回退一個 事務(wù)。可以回退整個事務(wù),也可以會退部分事務(wù),但是不能回退 一個已經(jīng)被提交的事務(wù)。
回退部分事務(wù)的ROLLBACK命令為: ROLLBACK to savepoint 存儲點(diǎn)名 存儲點(diǎn)是用戶放入事務(wù)中的標(biāo)記,用來表示一個可被回退的 位置。存儲點(diǎn)通過在事務(wù)中放入一個SAVEPOINT命令而被插入。
該 命令的語法是: SAVEPOINT 存儲點(diǎn)名 如果在ROLLBACK語句中沒有給出存儲點(diǎn)名,則整個事務(wù)被回 退。 五 SYBASE數(shù)據(jù)庫的事務(wù)定義 SYBASE通過使用BEGIN TRANsaction和COMMIT TRANsaction命令指 示SQL將任意數(shù)目的語句作為一個單元來處理。
ROLLBACK TRANsaction 命令則允許用戶恢復(fù)到事務(wù)的開始,或恢復(fù)到事務(wù)內(nèi)部已經(jīng)被用SAVE TRANsaction命令定義的存儲點(diǎn)上。 BEGIN TRANsaction和COMMIT TRANsaction能夠包含任意數(shù)目的SQL 語句和存儲過程,方法很簡單: BEGIN TRANsaction [事務(wù)名稱] COMMIT TRANsaction 如果一個事務(wù)由于某些故障或者由于用戶改變主意而必須在提交 前取消它,則數(shù)據(jù)庫被恢復(fù)到這些語句和過程執(zhí)行之前的狀態(tài)。
利用ROLLBACK TRANsaction命令可以在COMMIT TRANsaction命令 前隨時回退一個事務(wù)??梢曰赝苏麄€事務(wù),也可以回退部分事務(wù),但 是不能回退一個已經(jīng)被提交的事務(wù)。
ROLLBACK TRANsaction命令為: ROLLBACK TRANsaction [事務(wù)名|存儲點(diǎn)名] 存儲點(diǎn)名是用戶放入事務(wù)中的標(biāo)記,用來表示一個可以被回退的 位置。存儲點(diǎn)名通過在事務(wù)中放入一個SAVE TRANsaction命令而被插 入。
該命令的句法是: SAVE TRANsaction 存儲點(diǎn)名 如果在ROLLBACK TRANsaction中沒有給出存儲點(diǎn)名或事務(wù)名,則 事務(wù)被回退到批處理中的第一個BEGIN TRANsaction語句處。
第一章 數(shù)據(jù)庫基礎(chǔ)知識本章以概念為主,主要是了解數(shù)據(jù)庫的基本概念,數(shù)據(jù)庫技術(shù)的發(fā)展,數(shù)據(jù)模型,重點(diǎn)是關(guān)系型數(shù)據(jù)。
第一節(jié):信息,數(shù)據(jù)與數(shù)據(jù)處理一、信息與數(shù)據(jù):1、信息:是現(xiàn)實(shí)世界事物的存在方式或運(yùn)動狀態(tài)的反映?;蛘J(rèn)為,信息是一種已經(jīng)被加工為特定形式的數(shù)據(jù)。
信息的主要特征是:信息的傳遞需要物質(zhì)載體,信息的獲取和傳遞要消費(fèi)能量;信息可以感知;信息可以存儲、壓縮、加工、傳遞、共享、擴(kuò)散、再生和增值2、數(shù)據(jù):數(shù)據(jù)是信息的載體和具體表現(xiàn)形式,信息不隨著數(shù)據(jù)形式的變化而變化。數(shù)據(jù)有文字、數(shù)字、圖形、聲音等表現(xiàn)形式。
3、數(shù)據(jù)與信息的關(guān)系:一般情況下將數(shù)據(jù)與信息作為一個概念而不加區(qū)分。二、數(shù)據(jù)處理與數(shù)據(jù)管理技術(shù):1、數(shù)據(jù)處理:數(shù)據(jù)處理是對各種形式的數(shù)據(jù)進(jìn)行收集、存儲、加工和傳輸?shù)然顒拥目偡Q。
2、數(shù)據(jù)管理:數(shù)據(jù)收集、分類、組織、編碼、存儲、檢索、傳輸和維護(hù)等環(huán)節(jié)是數(shù)據(jù)處理的基本操作,稱為數(shù)據(jù)管理。數(shù)據(jù)管理是數(shù)據(jù)處理的核心問題。
3、數(shù)據(jù)庫技術(shù)所研究的問題不是如何科學(xué)的進(jìn)行數(shù)據(jù)管理。4、數(shù)據(jù)管理技術(shù)的三個階段:人工管理,文件管理和數(shù)據(jù)庫系統(tǒng)。
第二節(jié):數(shù)據(jù)庫技術(shù)的發(fā)展一、數(shù)據(jù)庫的發(fā)展:數(shù)據(jù)庫的發(fā)展經(jīng)歷了三個階段:1、層次型和網(wǎng)狀型: 代表產(chǎn)品是1969年IBM公司研制的層次模型數(shù)據(jù)庫管理系統(tǒng)IMS。2、關(guān)系型數(shù)據(jù)型庫: 目前大部分?jǐn)?shù)據(jù)庫采用的是關(guān)系型數(shù)據(jù)庫。
1970年IBM公司的研究員E.F.Codd提出了關(guān)系模型。其代表產(chǎn)品為sysem R和Inges。
3、第三代數(shù)據(jù)庫將為更加豐富的數(shù)據(jù)模型和更強(qiáng)大的數(shù)據(jù)管理功能為特征,以提供傳統(tǒng)數(shù)據(jù)庫系統(tǒng)難以支持的新應(yīng)用。它必須支持面向?qū)ο?,具有開放性,能夠在多個平臺上使用。
二、數(shù)據(jù)庫技術(shù)的發(fā)展趨勢:1、面向?qū)ο蟮姆椒ê图夹g(shù)對數(shù)據(jù)庫發(fā)展的影響:數(shù)據(jù)庫研究人員借鑒和吸收了面向?qū)ρ姆椒ê图夹g(shù),提出了面向?qū)ο髷?shù)據(jù)模型。2、數(shù)據(jù)庫技術(shù)與多學(xué)科技術(shù)的有機(jī)組合:3、面向?qū)iT應(yīng)用領(lǐng)域的數(shù)據(jù)庫技術(shù)三、數(shù)據(jù)庫系統(tǒng)的組成:數(shù)據(jù)庫系統(tǒng)(DBS)是一個采用數(shù)據(jù)庫技術(shù),具有管理數(shù)據(jù)庫功能,由硬件、軟件、數(shù)據(jù)庫及各類人員組成的計(jì)算機(jī)系統(tǒng)。
1、數(shù)據(jù)庫(DB):數(shù)據(jù)庫是以一定的組織方式存放于計(jì)算機(jī)外存儲器中相互關(guān)聯(lián)的數(shù)據(jù)集合,它是數(shù)據(jù)庫系統(tǒng)的核心和管理對象,其數(shù)據(jù)是集成的、共享的以及冗余最小的。2、數(shù)據(jù)庫管理系統(tǒng)(DBMS):數(shù)據(jù)庫管理系統(tǒng)是維護(hù)和管理數(shù)據(jù)庫的軟件,是數(shù)據(jù)庫與用戶之間的界面。
作為數(shù)據(jù)庫的核心軟件,提供建立、操作、維護(hù)數(shù)據(jù)庫的命令和方法。3、應(yīng)用程序:對數(shù)據(jù)庫中數(shù)據(jù)進(jìn)行各種處理的程序,由用戶編寫。
4、計(jì)算機(jī)軟件:5、計(jì)算機(jī)硬件:包括CPU、內(nèi)存、磁盤等。要求有足夠大的內(nèi)存來存放操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)的核心模塊以及數(shù)據(jù)庫緩沖;足夠大的磁盤能夠直接存取和備份數(shù)據(jù);比較主的通道能力;支持聯(lián)網(wǎng),實(shí)現(xiàn)數(shù)據(jù)共享。
6、各類人員。四、數(shù)據(jù)庫系統(tǒng)的特點(diǎn):1、數(shù)據(jù)共享:2、面向全組織的數(shù)據(jù)結(jié)構(gòu)化:數(shù)據(jù)不再從屬于一個特定應(yīng)用,而是按照某種模型組織成為一個結(jié)構(gòu)化的整。
它描述數(shù)據(jù)要身的特性,也描述數(shù)據(jù)與數(shù)據(jù)之間的種種聯(lián)系。3、數(shù)據(jù)獨(dú)立性:4、可控?cái)?shù)據(jù)冗余度:5、統(tǒng)一數(shù)據(jù)控制功能:數(shù)據(jù)安全性控制:指采取一定的安全保密措施確保數(shù)據(jù)庫中的數(shù)據(jù)不被非法用戶存取而造成數(shù)據(jù)的泄密和破壞;數(shù)據(jù)完整性控制:是指數(shù)據(jù)的正確性、有效性與相容性。
并發(fā)控制:多個用戶對數(shù)據(jù)進(jìn)行存取時,采取必要的措施進(jìn)行數(shù)據(jù)保護(hù);數(shù)據(jù)恢復(fù):系統(tǒng)能進(jìn)行應(yīng)急處理,把數(shù)據(jù)恢復(fù)到正確狀態(tài)。第三節(jié):數(shù)據(jù)模型一、數(shù)據(jù)組織:關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)層次如下:1、數(shù)據(jù)項(xiàng)(field):又稱字段,用于描述實(shí)體的一個屬性,是數(shù)據(jù)庫的基本單位。
一般用屬性名作項(xiàng)名;2、記錄(Record):又稱為結(jié)點(diǎn),由若干個數(shù)據(jù)項(xiàng)組成,用于描述一個對象;3、文件(File):由若干個記錄組成;4、數(shù)據(jù)庫(Data Base):由邏輯相關(guān)的文件組成。二、數(shù)據(jù)模型:數(shù)據(jù)的組織形式稱為數(shù)據(jù)模型,它決定 數(shù)據(jù)(主要是結(jié)點(diǎn))之間聯(lián)系的表達(dá)方式。
主要包括層次型、網(wǎng)狀型、關(guān)系型和面向?qū)ο笮退姆N。層次型和網(wǎng)狀型是早期的數(shù)據(jù)模型,又稱為格式化數(shù)據(jù)系統(tǒng)數(shù)模型。
以上四種模型決定了四種類型的數(shù)據(jù)庫:層次數(shù)據(jù)庫系統(tǒng),網(wǎng)狀數(shù)據(jù)庫系統(tǒng),關(guān)系型數(shù)據(jù)庫系統(tǒng)以及面向?qū)ο髷?shù)據(jù)庫系統(tǒng)。目前微機(jī)上使用的主要是關(guān)系型數(shù)據(jù)庫。
1、層次型:是以記錄為結(jié)點(diǎn)的有向樹;圖如教材P7圖1--22、網(wǎng)狀型:樹的集合,它的表示能力以及精巧懷強(qiáng)于層次型,但獨(dú)立性下降。3、關(guān)系型:在關(guān)系型中,數(shù)據(jù)被組織成若干張二維表,每張表稱為一個關(guān)系。
一張表格中的一列稱為一個“屬性”,相當(dāng)于記錄中的一個數(shù)據(jù)項(xiàng)(或稱為字段),屬性的取值范圍稱為域。表格中的一行稱為一個“元組”,相當(dāng)于記錄值。
可用一個或若干個屬性集合的值標(biāo)識這些元組,稱為“關(guān)鍵字”。每一行對應(yīng)的屬性值叫做一個分量。
表格的框架相當(dāng)于記錄型,一個表格數(shù)據(jù)相當(dāng)于一個同質(zhì)文件。所有關(guān)系由關(guān)系的框架和若干元組構(gòu)成,或者說關(guān)系是一張二維表。
關(guān)系型。
1)select b.name from book as a ,student as b where a.title like '數(shù)據(jù)庫原理';2)select a.sid form student as a, lend as b,return as c where (b.sid = a.sid or c.sid = a.sid )and ldate = rdate;3)select distinct (t.title)書名,(select(max(a.price) from book as a)價格 from book as t。
判斷題:對錯錯錯對對錯對錯對
填空題:1.操作系統(tǒng) 2.order by , group by 3.表,元組,屬性。4.數(shù)據(jù)結(jié)構(gòu),完整性約束 5.關(guān)系 6.一對一,一對多,多對多 7.創(chuàng)建,修改,刪除 8.min,sum 9.視圖,虛擬或查詢 10.exec 11. 系統(tǒng)存儲過程,用戶定義存儲過程
數(shù)據(jù)庫是“按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲和管理數(shù)據(jù)的倉庫.J.Martin給數(shù)據(jù)庫下了一個比較完整的定義:數(shù)據(jù)庫是存儲在一起的相關(guān)數(shù)據(jù)的集合,這些數(shù)據(jù)是結(jié)構(gòu)化的,無有害的或不必要的冗余,并為多種應(yīng)用服務(wù);數(shù)據(jù)的存儲獨(dú)立于使用它的程序;對數(shù)據(jù)庫插入新數(shù)據(jù),修改和檢索原有數(shù)據(jù)均能按一種公用的和可控制的方式進(jìn)行。
當(dāng)某個系統(tǒng)中存在結(jié)構(gòu)上完全分開的若干個數(shù)據(jù)庫時,則該系統(tǒng)包含一個“數(shù)據(jù)庫集合”。 數(shù)據(jù)庫的基本結(jié)構(gòu)分三個層次,反映了觀察數(shù)據(jù)庫的三種不同角度。
(1)物理數(shù)據(jù)層。 它是數(shù)據(jù)庫的最內(nèi)層,是物理存貯設(shè)備上實(shí)際存儲的數(shù)據(jù)的集合。
這些數(shù)據(jù)是原始數(shù)據(jù),是用戶加工的對象,由內(nèi)部模式描述的指令操作處理的位串、字符和字組成。 (2)概念數(shù)據(jù)層。
它是數(shù)據(jù)庫的中間一層,是數(shù)據(jù)庫的整體邏輯表示。指出了每個數(shù)據(jù)的邏輯定義及數(shù)據(jù)間的邏輯聯(lián)系,是存貯記錄的集合。
它所涉及的是數(shù)據(jù)庫所有對象的邏輯關(guān)系,而不是它們的物理情況,是數(shù)據(jù)庫管理員概念下的數(shù)據(jù)庫。 (3)邏輯數(shù)據(jù)層。
它是用戶所看到和使用的數(shù)據(jù)庫,表示了一個或一些特定用戶使用的數(shù)據(jù)集合,即邏輯記錄的集合。 數(shù)據(jù)庫不同層次之間的聯(lián)系是通過映射進(jìn)行轉(zhuǎn)換的。
數(shù)據(jù)庫的主要特點(diǎn) (1)實(shí)現(xiàn)數(shù)據(jù)共享。 數(shù)據(jù)共享包含所有用戶可同時存取數(shù)據(jù)庫中的數(shù)據(jù),也包括用戶可以用各種方式通過接口使用數(shù)據(jù)庫,并提供數(shù)據(jù)共享。
(2)減少數(shù)據(jù)的冗余度。 同文件系統(tǒng)相比,由于數(shù)據(jù)庫實(shí)現(xiàn)了數(shù)據(jù)共享,從而避免了用戶各自建立應(yīng)用文件。
減少了大量重復(fù)數(shù)據(jù),減少了數(shù)據(jù)冗余,維護(hù)了數(shù)據(jù)的一致性。 (3)數(shù)據(jù)的獨(dú)立性。
數(shù)據(jù)的獨(dú)立性包括數(shù)據(jù)庫中數(shù)據(jù)庫的邏輯結(jié)構(gòu)和應(yīng)用程序相互獨(dú)立,也包括數(shù)據(jù)物理結(jié)構(gòu)的變化不影響數(shù)據(jù)的邏輯結(jié)構(gòu)。 (4)數(shù)據(jù)實(shí)現(xiàn)集中控制。
文件管理方式中,數(shù)據(jù)處于一種分散的狀態(tài),不同的用戶或同一用戶在不同處理中其文件之間毫無關(guān)系。利用數(shù)據(jù)庫可對數(shù)據(jù)進(jìn)行集中控制和管理,并通過數(shù)據(jù)模型表示各種數(shù)據(jù)的組織以及數(shù)據(jù)間的聯(lián)系。
(5)數(shù)據(jù)一致性和可維護(hù)性,以確保數(shù)據(jù)的安全性和可靠性。 主要包括:①安全性控制:以防止數(shù)據(jù)丟失、錯誤更新和越權(quán)使用;②完整性控制:保證數(shù)據(jù)的正確性、有效性和相容性;③并發(fā)控制:使在同一時間周期內(nèi),允許對數(shù)據(jù)實(shí)現(xiàn)多路存取,又能防止用戶之間的不正常交互作用;④故障的發(fā)現(xiàn)和恢復(fù):由數(shù)據(jù)庫管理系統(tǒng)提供一套方法,可及時發(fā)現(xiàn)故障和修復(fù)故障,從而防止數(shù)據(jù)被破壞 (6)故障恢復(fù)。
由數(shù)據(jù)庫管理系統(tǒng)提供一套方法,可及時發(fā)現(xiàn)故障和修復(fù)故障,從而防止數(shù)據(jù)被破壞。數(shù)據(jù)庫系統(tǒng)能盡快恢復(fù)數(shù)據(jù)庫系統(tǒng)運(yùn)行時出現(xiàn)的故障,可能是物理上或是邏輯上的錯誤。
比如對系統(tǒng)的誤操作造成的數(shù)據(jù)錯誤等。
一、數(shù)據(jù) 數(shù)據(jù)是數(shù)據(jù)庫中存儲的基本對象。
1. 定義 :描述事物的符號記錄。 2. 種類 :文字、圖像、圖形、聲音。
3. 特點(diǎn) :數(shù)據(jù)與其語義是不可分的。 二、數(shù)據(jù)庫 1. 定義 :長期存儲在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)集合。
2. 特征 : 1)數(shù)據(jù)按一定的數(shù)據(jù)模型組織、描述和存儲 2)可為各種用戶共享 3)冗余度較小 4)數(shù)據(jù)獨(dú)立性較高 5)易擴(kuò)展 三、數(shù)據(jù)庫管理系統(tǒng)(DBMS) 1. 定義:數(shù)據(jù)庫管理系統(tǒng)(Database Management System 即DBMS)是位于用戶與操作系統(tǒng)之間的數(shù)據(jù)管理軟件。 2. 用途 :科學(xué)地組織和存儲數(shù)據(jù)、高效地獲取和維護(hù)數(shù)據(jù) 3. 功能 :1)數(shù)據(jù)庫定義功能 2)數(shù)據(jù)操縱功能 3)數(shù)據(jù)庫的運(yùn)行管理 4)數(shù)據(jù)庫的建立和維護(hù)功能(實(shí)用程序) 四、數(shù)據(jù)庫系統(tǒng) 1. 定義:數(shù)據(jù)庫系統(tǒng)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng),一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(及其開發(fā)工具)、應(yīng)用系統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。
2. 特點(diǎn):數(shù)據(jù)結(jié)構(gòu)化;數(shù)據(jù)的共享性高、冗余度低、易擴(kuò)充;數(shù)據(jù)獨(dú)立性高;數(shù)據(jù)由DBMS統(tǒng)一管理和控制。 五、數(shù)據(jù)庫管理技術(shù) 1. 定義:對數(shù)據(jù)進(jìn)行分類、組織、編碼、存儲、檢索和維護(hù),是數(shù)據(jù)處理的中心問題 2. 發(fā)展過程: 1)人工管理階段(40年代中--50年代中) 2)文件系統(tǒng)階段(50年代末--60年代中) 3)數(shù)據(jù)庫系統(tǒng)階段(60年代末--現(xiàn)在) 3. 發(fā)展動力: 1)應(yīng)用需求的推動 2)計(jì)算機(jī)硬件的發(fā)展 3)計(jì)算機(jī)軟件的發(fā)展 六、數(shù)據(jù)模型 1. 定義:數(shù)據(jù)模型(Data Model)也是一種模型,它是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象。
2. 作用:在數(shù)據(jù)庫中用數(shù)據(jù)模型來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。通俗地講數(shù)據(jù)模型就是現(xiàn)實(shí)世界的模擬,現(xiàn)有的數(shù)據(jù)庫系統(tǒng)均是基于某種數(shù)據(jù)模型的。
3. 三要素: 1)數(shù)據(jù)結(jié)構(gòu) 2)數(shù)據(jù)操作 3)完整性約束 4. 常用的數(shù)據(jù)模型: 1)層次模型 2)網(wǎng)狀模型 3)關(guān)系模型:ORACLE、SQL、SYBASE、INFORMIX、DB/2、COBASE、PBASE、EasyBase、DM/2、OpenBase 4)面向?qū)ο竽P? 5. 層次: 1)概念模型:也稱信息模型,它是按用戶的觀點(diǎn)來對數(shù)據(jù)和信息建模。 2)數(shù)據(jù)模型:主要包括網(wǎng)狀模型、層次模型、關(guān)系模型等,它是按計(jì)算機(jī)系統(tǒng)的觀點(diǎn)對數(shù)據(jù)建模 七、關(guān)系模型 1. 基本概念: 1)關(guān)系:一個關(guān)系對應(yīng)通常說的一張表。
2)元組:表中的一行即為一個元組。 3)屬性:表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名。
2. 關(guān)系模型的優(yōu)缺點(diǎn): 優(yōu):1)建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上 2)概念單一,數(shù)據(jù)結(jié)構(gòu)簡單、清晰,用戶易懂易用 3)關(guān)系模型的存取路徑對用戶透明 缺:1)存取路徑對用戶透明導(dǎo)致查詢效率往往不如非關(guān)系數(shù)據(jù)模型 2)為提高性能,必須對用戶的查詢請求進(jìn)行優(yōu)化增加了開發(fā)數(shù)據(jù)庫管理系統(tǒng)的難度 3. 關(guān)系模型的組成:關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合、關(guān)系完整性約束 八、關(guān)系數(shù)據(jù)理論 1. 基本概念 關(guān)系:描述實(shí)體、屬性、實(shí)體間的聯(lián)系。從形式上看,它是一張二維表,是所涉及屬性的笛卡爾積的一個子集。
關(guān)系模式:用來定義關(guān)系。 關(guān)系數(shù)據(jù)庫:基于關(guān)系模型的數(shù)據(jù)庫,利用關(guān)系來描述現(xiàn)實(shí)世界。
從形式 上看,它由一組關(guān)系組成。 關(guān)系數(shù)據(jù)庫的模式:定義這組關(guān)系的關(guān)系模式的全體。
2. 范式: 范式是符合某一種級別的關(guān)系模式的集合。 1)1NF的定義 若關(guān)系模式中的所有屬性值都是不可再分的原子值,則稱該種關(guān)系模式為第一范式。
2)2NF的定義 若關(guān)系模式R∈1NF,并且每一個非主屬性都完全函數(shù)依賴于R的碼,則R ∈2NF。 3)3NF的定義 若一個數(shù)據(jù)表已滿足2NF,且該數(shù)據(jù)表中的任何兩個非主鍵字段的數(shù)值之間不存在函數(shù)依賴關(guān)系,則該數(shù)據(jù)表滿足第三范式。
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時間:7.057秒