當前位置:首頁 » 操作系統 » 資料庫設計理論

資料庫設計理論

發布時間: 2022-12-06 18:28:22

A. 在關系資料庫設計理論中,起核心作用的是什麼

資料庫 data base 為滿足某一部門中多個用戶多種應用的需要,按照一定的數據模型在計算機系統中組織、存儲和使用的互相聯系的數據集合。 帶有資料庫的計算機系統,除具備一般的硬體、軟體外,必須有用以存儲大量數據的直接存取存儲設備、管理並控制資料庫的軟體——資料庫管理系統(DBMS)、管理資料庫的人員——資料庫管理員 (DBA)。這樣的數據、硬體、軟體和管理人員的總體構成資料庫系統。資料庫僅是資料庫系統的一個組成部分。 資料庫系統的功能和特徵 資料庫系統由文卷系統發展而來。與文卷系統相比,這種系統具有數據、體系和控制三個方面的主要特徵。 數據特徵 在文卷系統中雖然程序與數據之間可用存取方法進行轉換,但文卷還是與應用程序對應的,即數據仍面向應用。每一應用各自建立自己的一組文卷。不同的應用若涉及相同的數據,則這些數據分別納入各自的文卷之中。文卷的各種記錄之間沒有建立聯系,因而數據冗餘度大。增加新的應用,必須同時增加新的文卷。因此,文卷系統中的文卷是無結構的、不易擴充的信息集合。資料庫則不僅描述數據本身,而且描述數據之間的聯系。它的數據結構反映了某一部門的整體信息結構,數據冗餘度小、易於擴充新的應用,因而是面向數據總體結構的信息集合,可為多個用戶共享。 體系特徵 一切數據都有邏輯和物理兩個側面。在資料庫系統中,數據邏輯結構的描述稱為邏輯模式。邏輯模式又分為描述全局邏輯結構的全局模式(簡稱模式)和描述某些應用所涉及的局部邏輯結構的子模式。數據物理結構的描述稱為存儲模式。這兩種模式總稱為資料庫模式。 資料庫系統中,用戶根據子模式編製程序。子模式與模式模式與存儲模式之間有軟體進行映射。因此,程序與數據之間具有兩級獨立性:物理獨立性和邏輯獨立性。數據的存儲模式改變,而模式可以不改變,因而不必改寫應用程序,這稱為物理獨立性。模式改變時,子模式可能不改變,也就不必改寫應用程序,這稱為邏輯獨立性。由於資料庫系統具備比較高的程序與數據的獨立性,可以使程序員在編制應用程序時集中精力考慮演算法邏輯,不必過問物理細節,而且可以大大減少應用程序維護的工作量。 控制特徵 資料庫數據數量龐大,結構復雜,又為多個用戶所共享。因此,必須由資料庫管理系統在定義、建立、運行以及維護時進行統一管理和控制,以保證資料庫數據的安全性、完整性和並發操作的一致性。此外,還必須有資料庫管理員專門負責對資料庫的管理、控制監督和改進。 由於資料庫系統具有上述特徵,它的出現使信息系統的研製從圍繞加工數據的程序為中心,轉變到圍繞共享的資料庫來進行。這便於數據的集中管理,有利於應用程序的研製和維護。數據減少了冗餘度和提高了相容性,從而提高了作出決策的相容性。因此,大型復雜的信息系統大多以資料庫為核心,資料庫系統在計算機應用中起著越來越重要的作用。 研究課題 資料庫研究的課題,主要涉及三個領域。 資料庫管理系統軟體的研製 DBMS是資料庫系統的基礎。研製DBMS的基本目標,是擴大功能,提高性能和可用性,從而提高用戶的生產率。70年代以來,研製的重點是探索關系資料庫管理系統的設計,內容包括關系數據語言、查詢優化、並發控制和系統性能等。另一類課題是對DBMS標准化的研究,即研究一個統一的DBMS體系結構的規范。 資料庫設計 這是在計算機系統具有的資料庫管理系統的基礎上,按照應用要求以及計算機系統所提供的數據模型和功能,設計一個結構良好、使用方便、效率較高的,以資料庫為核心的應用信息系統。這一領域主要的研究課題,是資料庫設計方法學和設計工具的探索。例如,運用軟體工程的方法和工具指導資料庫設計;研究資料庫設計各個階段中完備的方法和工具;以關系資料庫的規范化理論為指南進行資料庫邏輯設計等。 資料庫理論 主要研究關系資料庫理論。關系資料庫理論研究的意義,一方面在於它為資料庫學科奠定了理論基礎;另一方面它為資料庫設計提供了判別標准,從而成為資料庫設計的有力指南。研究的主要內容是關系的規范化理論。關系規范化理論已應用於資料庫設計的各個階段。 發展 資料庫技術是計算機科學中發展最快的領域之一,新的領域越來越多。 分布式資料庫系統 隨著70年代後期分布計算機系統的發展,相應地研究成功分布式資料庫系統。分布式資料庫系統是一個在邏輯上完整,而在物理上分散在若乾颱互相連接的結點機上的資料庫系統。它既具有分布性又具有資料庫

B. 資料庫設計的核心是什麼

資料庫當然不能像execl那樣去使用,要不就失去意義,至少應遵循第三範式(3NF)去設計,否則就會有大量的數據冗餘,給以後使用和維護帶來麻煩.樓主可以了解下資料庫範式方面的內容.

C. SQL關系資料庫設計理論中提到的超健和候選鍵的概念怎麼理解,很抽象。

超鍵就是指一組欄位可以唯一確定一條數據,而候選鍵是最簡潔的超鍵,也就是只有必要欄位,
舉例來說明,假如有一個班級,班級中沒有同名的學生,有如下一張表。
std_id last_name first_name gender score
10001 張 三 男 85
10002 李 四 男 86
10005 妹 子 女 95
10006 李 三 男 88
這張表裡,因為我們前面說到這個班級里沒有同名的學生。
因此last_name+first_name就是一個超鍵,因為可以唯一確定一行數據,同時也是一個候選鍵,因為這兩個欄位去掉任何一個都不再能唯一確定一行數據。
更明顯的區別在於,last_name+first_name+gender還是一個超鍵,但是已經不再是候選鍵了,因為在確定唯一一條數據的時候,gender不是必要的欄位。
也就是說候選鍵是可以唯一確定一條數據的必要欄位的最小集合,而候選鍵加上任何的額外欄位都是超鍵。
在上面的例子中,std_id自己就是一個候選鍵,std_id+任何額外的欄位都是候選鍵。
同時從習慣而言,一般會把這種std_id欄位定義為主鍵,主鍵並不一定只是一個欄位,如果我們上面的表增加一列班級id(class_id),同時加入每個班級中的std_id都是從10001開始的話,我們就可以用class_id+std_id來作為主鍵。
自己的理解,希望可以幫到題主。

D. 關系資料庫設計理論主要包括幾個方面的內容,其中起核心作用的是什麼

關系資料庫設計理論主要包括三個方面內容,其中起核心作用的是數據依賴。

E. 關系資料庫設計理論

數據依賴是關系內部屬性之間相關聯系的表達,是語義的體現,是構成數據的約束,大多數數據依賴是函數依賴,它是關系中「鍵」概念的范化。
使用數據依賴這一概念來定義關系模式的規范形式,即規范化理論。

函數依賴FD
A1,A2,……,An——>B1,B2,……,Bm
(若兩個元組A1到An上相同則B1到Bm也相同,A1到An函數決定B1到Bm)

從已知FD推斷其它FD
FD的集合T,S
T與S等價:關系實例集合滿足S與其滿足T的情況完全一樣
(S是從T中推斷而來,T也是從S中推斷而來)
S從T中推斷而來:滿足T的關系實例也滿足S(S蘊涵於T)

分解/結合規則:

平凡函數依賴
一個約束對所有關系實例都成立,且與其它約束無關
平凡FD的右邊是左邊的子集
平凡依賴規則:

(註:
非平凡函數依賴:僅當其右邊屬性集中至少有一個屬性不屬於左邊的集合。例如: title year →year length
完全非平凡函數依賴:僅當其右邊集合中的屬性均不在左邊集合中。例如: title year →length)

屬性的閉包
S下{A1,A2,……An}的閉包{A1,……An}上標+
就是A中可以從S推斷出來的右邊變成一個集合
從一個給定集合A出發,不斷擴展這個集合,對於S中的FD分解使右邊只有一個屬性,然後對於FD,只要左邊都在集合中就把右邊也加到集合中。p42

傳遞規則

函數依賴的閉包集合
求函數依賴集F的閉包F+:求所有屬性子集的閉包(不考慮空集),然後利用每個閉包來寫FD(A->空集也要寫)

S的基本集:任何和S等價的FD集合

最小化基本集:右邊均是單一屬性;刪除任何一個FD後不再是基本集;
對於任何一個FD,若刪除其左邊一個或多個屬性,不再是基本集

投影函數依賴
R投影到R1
函數依賴集S的投影為滿足以下條件的FD的集合:1.從S推斷而來2.只包含R1中的屬性
對R1的所有子集求閉包,得到FD的基本集,簡化為最小基本集

「求屬性子集閉包」的幾個主要應用
1.求所有候選鍵
2.求所有非平凡FD
3.求所有違反BCNF的非平凡FD(投影函數依賴應用1)
4.求非平凡FD的最小基本集(投影函數依賴應用2)

簡化規則:
1.不必考慮空集(適用於1-4)
2.不必考慮不能推出非平凡函數依賴的屬性子集X(適用於1-4)
2.1屬性子集X的任何一個子集都不是FD的左部,無法推出非平凡FD,無需求該屬性子集X的閉包。如例1.
2.2不必考慮屬性全集U的閉包。
2.3 屬性子集X+的閉包依然是X+本身,無法推出非平凡FD,不需要再求X+的閉包
3.如果已知屬性子集X, X+是屬性全集,那麼就無需考慮任何X超集的閉包。(注意:!!!!!!不適用於2!!!!!!)

異常:冗餘;更新異常;刪除異常

分解關系
將一個關系用多個不存在異常的關系替換

Boyce-Codd範式BCNF
每個非平凡FD的左邊都必須是超鍵
任何一個二元關系屬於BCNF
(BCNF範式在3NF的基礎上,消除主屬性對鍵的部分函數依賴與傳遞函數依賴)

分解為BCNF
輸入:關系R0其上的函數依賴集S0
輸出:由R0分解出的關系集合,每個關系都屬於BCNF
方法:R=R0 S=S0
1.檢驗R是否屬於BCNF若是則返回{R}
2.有BCNF違例X->Y,計算X的閉包,令R1為X的閉包,R2為X與不在X的閉包中的屬性
3.計算R1,R2的投影函數依賴S1,S2
4.遞歸檢驗R1,R2

分解的優勢
1.消除異常
2.信息的可恢復
3.依賴的保持
BCNF可保持1,2
3NF可保持2,3

無損連接的分解
子關系經連接(這里指自然連接)運算可恢復原關系
保持依賴的分解
子關系的函數依賴集可蘊涵原函數依賴集

從分解中恢復信息
無損連接:可通過連接分解的各個關系重構原關系
若Y->Z在關系R上成立,且R的屬性集為X∪Y∪Z,則R=π{下標X∪Y}(R)⋈π{下標Y∪Z}(R)
chase演算法:檢驗一個分解是否含有無損連接,即判斷是否可以根據F中的FD來證明所有屬於π{下標s1}(R)⋈π{下標s2}(R)⋈……⋈π{下標sk}(R)的元組t也屬於R

依賴的保持
BCNF無法保持 p57例3.25

第三範式3NF
擁有無損連接和依賴保持性質
條件:對於每個非平凡FD,或者其左邊是超鍵,或者其右邊僅由主屬性構成

F. 資料庫設計原則

本系統中資料庫的設計,要考慮和遵循下列資料庫設計的基本原則,以建立穩定、安全、可靠的資料庫。

1)一致性原則:對數據來源進行統一、系統的分析與設計,協調好各種數據源,保證數據的一致性和有效性。

2)完整性原則:資料庫的完整性是指數據的正確性和相容性。要防止合法用戶使用資料庫時向資料庫加入不合語義的數據。對輸入到資料庫中的數據要有審核和約束機制。

3)安全性原則:資料庫的安全性是指保護數據,防止非法用戶使用資料庫或合法用戶非法使用資料庫造成數據泄露、更改或破壞。要有認證和授權機制。

4)可伸縮性與可擴展性原則:資料庫結構的設計應充分考慮發展的需要、移植的需要,具有良好的擴展性、伸縮性和適度冗餘。

5)規范化:資料庫的設計應遵循規范化理論。規范化的資料庫設計,可以減少資料庫插入、刪除、修改等操作時的異常和錯誤,降低數據冗餘度等。

G. 資料庫設計的基本步驟

資料庫設計的基本步驟

1、需求分析階段

進行資料庫設計首先必須准確了解與分析用戶需求(包括數據與處理)。需求分析是整個設計過程的基礎,是最困難和最耗費時間的一步。作為「地基」的需求分析是否做得充分與准確,決定了在其上構建資料庫「大廈」的速度與質量。需求分析做的不好,可能會導致整個資料庫設計返工重做。

2、概念結構設計階段

概念結構設計階段是整個資料庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成一個獨立於具體資料庫管理系統的概念模型。

3、邏輯結構設計階段

邏輯結構設計是將概念結構轉換為某個資料庫管理系統所支持的數據模型,並對其進行優化。

4、物理設計階段

物理結構設計師為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方式)。

5、資料庫實施階段

在資料庫實施階段,設計人員運用資料庫管理系統提供資料庫語言及其宿主語言,根據邏輯設計和物理設計的結果建立資料庫,編寫與調試應用程序,組織數據入庫,並進行測試運行。

6、資料庫運行和維護階段

資料庫應用系統經過試運行後即可投入正式運行,在資料庫系統運行過程中必須不斷對其進行評估、調整與修改。

資料庫設計的基本原則

1、一致性原則:對數據來源進行統一、系統的分析與設計,協調好各種數據源,保證數據的一致性和有效性。

2、完整性原則:資料庫的完整性是指數據的正確性和相容性。要防止合法用戶使用資料庫時向資料庫加入不合語義的數據。對輸入到資料庫中的數據要有審核和約束機制。

3、安全性原則:資料庫的安全性是指保護數據,防止非法用戶使用資料庫或合法用戶非法使用資料庫造成數據泄露、更改或破壞。要有認證和授權機制。

4、可伸縮性與可擴展性原則:資料庫結構的設計應充分考慮發展的需要、移植的需要,具有良好的擴展性、伸縮性和適度冗餘。

5、規范化原則:資料庫的設計應遵循規范化理論。規范化的資料庫設計,可以減少資料庫插入、刪除、修改等操作時的異常和錯誤,降低數據冗餘度等。

H. 資料庫設計主要包括哪幾部分,分別包括哪些內容

資料庫設計主要包括需求分析、概念結構設計、邏輯結構設計、物理結構設計、資料庫的實施和資料庫的運行和維護,具體內容如下:

1、需求分析

內容:調查和分析用戶的業務活動和數據的使用情況,弄清所用數據的種類、范圍、數量以及它們在業務活動中交流的情況,確定用戶對資料庫系統的使用要求和各種約束條件等,形成用戶需求規約。

2、概念設計

內容:對用戶要求描述的現實世界,通過對其中諸處的分類、聚集和概括,建立抽象的概念數據模型。這個概念模型應反映現實世界各部門的信息結構、信息流動情況、信息間的互相制約關系以及各部門對信息儲存、查詢和加工的要求等。

3、邏輯設計

內容:主要工作是將現實世界的概念數據模型設計成資料庫的一種邏輯模式,即適應於某種特定資料庫管理系統所支持的邏輯數據模式。與此同時,可能還需為各種數據處理應用領域產生相應的邏輯子模式。這一步設計的結果就是所謂「邏輯資料庫」。

4、物理設計

內容:根據特定資料庫管理系統所提供的多種存儲結構和存取方法等依賴於具體計算機結構的各項物理設計措施,對具體的應用任務選定最合適的物理存儲結構(包括文件類型、索引結構和數據的存放次序與位邏輯等)、存取方法和存取路徑等。

5、驗證設計

內容:收集數據並具體建立一個資料庫,運行一些典型的應用任務來驗證資料庫設計的正確性和合理性。一般,一個大型資料庫的設計過程往往需要經過多次循環反復。當設計的某步發現問題時,可能就需要返回到前面去進行修改。

6、運行與維護設計

內容:在資料庫系統正式投入運行的過程中,必須不斷地對其進行調整與修改。除了關系型資料庫已有一套較完整的數據範式理論可用來部分地指導資料庫設計之外,尚缺乏一套完善的資料庫設計理論、方法和工具,以實現資料庫設計的自動化或互動式的半自動化設計。

(8)資料庫設計理論擴展閱讀:

重要性

1、有利於資源節約

對計算機軟體資料庫設計加以重視不僅可減少軟體後期的維修,達到節約人力與物力的目的,同時還有利於軟體功能的高效發揮。

2、有利於軟體運行速度的提高

高水平的資料庫設計可滿足不同計算機軟體系統對於運行速度的需求,而且還可充分發揮並實現系統功能。計算機軟體性能提高後,系統發出的運行指令在為用戶提供信息時也將更加快速有效,軟體運行速度自然得以提高。

3、有利於軟體故障的減少

加強資料庫設計可有效減少軟體故障的發生幾率,推動計算機軟體功能的實現。

熱點內容
phpmyadminlinux安裝 發布:2024-03-29 17:13:15 瀏覽:792
python中replace 發布:2024-03-29 17:08:17 瀏覽:652
mdb導入sql 發布:2024-03-29 17:07:36 瀏覽:128
java資料庫工具類 發布:2024-03-29 16:31:15 瀏覽:388
安卓機哪裡看型號 發布:2024-03-29 15:59:40 瀏覽:281
cad解壓錯誤 發布:2024-03-29 15:01:45 瀏覽:79
存儲指令集 發布:2024-03-29 14:39:27 瀏覽:649
資料庫表刪除數據 發布:2024-03-29 14:39:26 瀏覽:367
出c語言整除 發布:2024-03-29 14:28:22 瀏覽:572
芬尼壓縮機 發布:2024-03-29 14:24:11 瀏覽:464