1.數(shù)據(jù)結(jié)構(gòu)化
數(shù)據(jù)結(jié)構(gòu)化是數(shù)據(jù)庫與文件系統(tǒng)的根本區(qū)別。在文件系統(tǒng)中,相互獨(dú)立的文件的記錄內(nèi)部是有結(jié)構(gòu)的。傳統(tǒng)文件的最簡單形式是等長同格式的記錄集合。例如:一個學(xué)生的人事記錄文件,每個記錄都有如圖1所示的記錄格式。
2.數(shù)據(jù)的共享性高,冗余度低,易擴(kuò)充
數(shù)據(jù)庫系統(tǒng)從整體角度描述數(shù)據(jù),數(shù)據(jù)不再面向某個應(yīng)用而是面向整個系統(tǒng),因此數(shù)據(jù)可以被多個用戶、多個應(yīng)用共享使用。數(shù)據(jù)共享可以大大減少數(shù)據(jù)冗余,節(jié)約存儲空間。數(shù)據(jù)共享還能夠避免數(shù)據(jù)之間的不相容性與不一致性。所謂數(shù)據(jù)的不一致性,是指同一數(shù)據(jù)不同拷貝的值不一樣。采用人工管理或文件系統(tǒng)管理時,由于數(shù)據(jù)被重復(fù)存儲,當(dāng)不同的應(yīng)用使用和修改不同的拷貝時就很容易造成數(shù)據(jù)的不一致。在數(shù)據(jù)庫中數(shù)據(jù)共享,減少了由于數(shù)據(jù)冗余造成的不一致現(xiàn)象。由于數(shù)據(jù)面向整個系統(tǒng),是有結(jié)構(gòu)的數(shù)據(jù),不僅可以被多個應(yīng)用共享使用,而且容易增加新的應(yīng)用,這就使得數(shù)據(jù)庫系統(tǒng)彈性大,易于擴(kuò)充,可以適應(yīng)各種用戶要求。可以取整體數(shù)據(jù)的各種子集于不同的應(yīng)用系統(tǒng),當(dāng)應(yīng)用需求改變或增加時,只要重新選取不同的子集或加上一部分?jǐn)?shù)據(jù)便可以滿足新的需求。
3.數(shù)據(jù)的獨(dú)立性高
數(shù)據(jù)的獨(dú)立性是數(shù)據(jù)庫領(lǐng)域中的一個常用術(shù)語,包括數(shù)據(jù)的物理獨(dú)立性和數(shù)據(jù)的邏輯獨(dú)立性。物理獨(dú)立性是指用戶的應(yīng)用程序與存儲在磁盤上的數(shù)據(jù)庫中的數(shù)據(jù)是相互獨(dú)立的。也就是說,數(shù)據(jù)在磁盤上的數(shù)據(jù)庫中的存儲是由DBMS管理的,用戶程序不需要了解,應(yīng)用程序要處理的只是數(shù)據(jù)的邏輯結(jié)構(gòu),這樣當(dāng)數(shù)據(jù)的物理存儲改變了,而應(yīng)用程序卻不用改變。邏輯獨(dú)立性是指用戶的應(yīng)用程序與數(shù)據(jù)庫的邏輯結(jié)構(gòu)是相互獨(dú)立的,也就是說,數(shù)據(jù)的邏輯結(jié)構(gòu)改變了,用戶程序也可以不變。數(shù)據(jù)與程序的獨(dú)立,把數(shù)據(jù)的定義從程序中分離出去,加上數(shù)據(jù)的存取又由DBMS負(fù)責(zé),從而簡化了應(yīng)用程序的編制,大大減少了應(yīng)用程序的維護(hù)和修改。
4.數(shù)據(jù)由DBMS統(tǒng)一管理和控制
數(shù)據(jù)庫的共享是并發(fā)的共享,即多個用戶可以同時存取數(shù)據(jù)庫中的數(shù)據(jù),甚至可以同時存取數(shù)據(jù)庫中的同一數(shù)據(jù)。為此,DBMS還必須提供以下幾方面的數(shù)據(jù)控制功能:
(1)數(shù)據(jù)的安全性(Security)保護(hù)
數(shù)據(jù)的安全性是指保護(hù)數(shù)據(jù)以防止不合法的使用造成數(shù)據(jù)的泄密和破壞。使每個用戶只能按規(guī)定,對某些數(shù)據(jù)以某些方式進(jìn)行使用和處理。
(2)數(shù)據(jù)的完整性(Integrity)檢查
數(shù)據(jù)的完整性指數(shù)據(jù)的正確性、有效性和相容性。完整性檢查將數(shù)據(jù)控制在有效的范圍內(nèi),或保證數(shù)據(jù)之間滿足一定的關(guān)系。
(3)并發(fā)(Concurrency)控制
當(dāng)多個用戶的并發(fā)進(jìn)程同時存取、修改數(shù)據(jù)庫時,可能會發(fā)生相互干擾而得到錯誤的結(jié)果,或使得數(shù)據(jù)庫的完整性遭到破壞,因此必須對多用戶的并發(fā)操作加以控制和協(xié)調(diào)。
(4)數(shù)據(jù)庫恢復(fù)(Recovery)
計算機(jī)系統(tǒng)的硬件故障、軟件故障、操作員的失誤,以及故意的破壞會影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,甚至造成數(shù)據(jù)庫部分或全部數(shù)據(jù)的丟失。DBMS必須具有將數(shù)據(jù)庫從錯誤狀態(tài)恢復(fù)到某一已知的正確狀態(tài)(亦稱為完整狀態(tài)或一致狀態(tài))的功能,這就是數(shù)據(jù)庫的恢復(fù)功能。數(shù)據(jù)庫管理階段應(yīng)用程序與數(shù)據(jù)庫之間的對應(yīng)關(guān)系可用如圖1-3所示的結(jié)構(gòu)表示。 見書。數(shù)據(jù)庫是長期存儲在計算機(jī)內(nèi)有組織的、大量的、共享的數(shù)據(jù)集合。它可以供各種用戶共享,具有最小冗余度和較高的數(shù)據(jù)獨(dú)立性。DBMS在數(shù)據(jù)庫建立、運(yùn)用和維護(hù)時對數(shù)據(jù)庫進(jìn)行統(tǒng)一控制,以保證數(shù)據(jù)的完整性、安全性,并在多用戶同時使用數(shù)據(jù)庫時進(jìn)行并發(fā)控制,在發(fā)生故障后對系統(tǒng)進(jìn)行恢復(fù)。數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序?yàn)橹行霓D(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中心的新階段。這樣既便于數(shù)據(jù)的集中管理,又有利于應(yīng)用程序的研制和維護(hù),提高了數(shù)據(jù)的利用率和相容性,提高了決策的可靠性。目前,數(shù)據(jù)庫已經(jīng)成為現(xiàn)代信息系統(tǒng)的不可分離的重要組成部分。具有數(shù)百萬甚至數(shù)十億字節(jié)信息的數(shù)據(jù)庫已經(jīng)普遍存在于科學(xué)技術(shù)、工業(yè)、農(nóng)業(yè)、商業(yè)、服務(wù)業(yè)和政府部門的信息系統(tǒng)
來源:網(wǎng)絡(luò)