資料庫設計/資料庫系統出現之前的時代
計算機管理資料的方式在過去幾十年中有了很大的進步。如今的使用者理所當然地享受著資料庫系統帶來的諸多益處。然而,就在不久前,計算機還依賴於一種效率低下且成本高昂的資料管理方法,稱為基於檔案系統。
一種將資訊儲存在計算機中的方式是將其儲存在永久檔案中。公司系統擁有許多應用程式;每個應用程式都設計用於操作資料檔案。這些應用程式是在組織使用者的要求下編寫的。隨著需求的出現,新的應用程式被新增到系統中。上面描述的系統稱為基於檔案系統。
考慮一個傳統的銀行系統,它使用基於檔案系統來管理組織資料,如圖 1.1 所示。我們可以看到,銀行中有不同的部門。每個部門都有自己的應用程式來管理和操作不同的資料檔案。對於銀行系統,這些程式可用於借記或貸記賬戶、查詢賬戶餘額、新增新的抵押貸款和生成月度對賬單。
圖 1.1. 銀行使用基於檔案系統管理資料的示例。
使用基於檔案系統來儲存組織資訊存在許多缺點。下面列出了五個例子。
在組織內部,檔案和應用程式通常由不同部門的不同程式設計師在很長一段時間內建立。這會導致資料冗餘,即在資料庫中,某個欄位需要在多個表中更新時發生的情況。這種做法會導致一些問題,例如
- 資料格式不一致
- 相同的資訊儲存在多個不同的地方(檔案)
- 資料不一致,即同一資料的多個副本相互衝突,會浪費儲存空間並重復工作
資料隔離是一種屬性,它決定何時以及如何將一個操作所做的更改對其他併發使用者和系統可見。這個問題發生在併發情況下。這是一個問題,因為
- 新應用程式難以檢索可能儲存在多個檔案中的適當資料。
資料完整性問題是使用基於檔案系統的另一個缺點。它指的是維護和保證資料庫中的資料正確且一致。在解決這個問題時需要考慮的因素有
- 資料值必須滿足在應用程式中指定的某些一致性約束。
- 要強制執行新的約束,很難更改應用程式。
安全問題可能是基於檔案方法的一個問題,因為
- 存在關於訪問許可權的約束。
- 應用程式需求以一種特殊的方式新增到系統中,因此很難強制執行約束。
併發是指資料庫能夠允許多個使用者訪問同一記錄,而不會對事務處理產生不利影響。基於檔案系統必須由應用程式管理或阻止併發。通常,在基於檔案系統中,當應用程式開啟一個檔案時,該檔案將被鎖定。這意味著其他人無法同時訪問該檔案。
在資料庫系統中,併發是受管理的,從而允許多個使用者訪問同一記錄。這是資料庫和基於檔案系統之間的重要區別。
使用基於檔案系統產生的困難促使人們開發了一種新的管理大量組織資訊的方法,稱為資料庫方法。
資料庫和資料庫技術在大多數使用計算機的領域發揮著重要作用,包括商業、教育和醫療保健。為了理解資料庫系統的基礎知識,我們將從介紹該領域的一些基本概念開始。
每個人都以某種方式使用資料庫,即使只是為了儲存朋友和家人的資訊。這些資料可能被記錄下來或使用文字處理程式儲存在計算機中,或者可以儲存在電子表格中。但是,儲存資料的最佳方式是使用資料庫管理軟體。這是一個功能強大的軟體工具,允許您以多種不同的方式儲存、操作和檢索資料。
大多數公司透過將客戶資訊儲存在資料庫中來跟蹤客戶資訊。這些資料可能包括客戶、員工、產品、訂單或任何其他有助於業務運營的資訊。
資料是指關於物件和概念的事實資訊,例如測量值或統計資料。我們使用資料進行討論或作為計算的一部分。資料可以是人、地點、事件、動作或許多其他事物中的任何一個。單個事實是資料的一個元素,或一個資料元素。
如果資料是資訊,而資訊是我們工作中處理的物件,那麼你就可以開始瞭解你可能在哪裡儲存它。資料可以儲存在
- 檔案櫃
- 電子表格
- 資料夾
- 分類賬
- 清單
- 你辦公桌上的一堆檔案
所有這些專案都儲存著資訊,資料庫也是如此。由於資料庫的機械性質,它們在管理和處理所儲存的資訊方面具有強大的能力。這可以使它們儲存的資訊對你的工作更有用。
透過對資料的瞭解,我們可以開始瞭解這樣一個工具:它能夠儲存和組織資料集合,進行快速搜尋,檢索和處理,它可能對我們如何使用資料產生重大影響。本書及其後續章節都是關於資訊管理的。
- 併發
- 資料庫能夠允許多個使用者訪問同一記錄,而不會對事務處理產生不利影響
- 資料元素
- 單個事實或資訊
- 資料不一致
- 同一個資料的不同副本之間存在衝突的情況
- 資料隔離
- 一個屬性,它決定了由一個操作所做的更改何時以及如何對其他併發使用者和系統可見
- 資料完整性
- 指維護和確保資料庫中的資料正確且一致
- 資料冗餘
- 當資料庫中的某個欄位需要在多個表中更新時就會發生這種情況
- 資料庫方法
- 允許管理大量的組織資訊
- 資料庫管理軟體
- 一個強大的軟體工具,允許你以多種方式儲存、操作和檢索資料
- 基於檔案的系統
- 用於操作資料檔案的應用程式
- 討論以下每個術語
- 資料
- 欄位
- 記錄
- 檔案
- 什麼是資料冗餘?
- 討論基於檔案的系統的缺點。
- 解釋資料和資訊之間的區別。
- 使用圖 1.2(如下)回答以下問題。
- 在表中,該檔案包含多少條記錄?
- 每條記錄有多少個欄位?
- 如果你想按城市生成列表,你會遇到什麼問題?
- 你將如何透過更改檔案結構來解決這個問題?
圖 1.2. 練習 #5 的表格,作者:A. Watt。
本節《資料庫設計》(包括其影像,除非另有說明)是 Nguyen Kim Anh 編寫的《資料庫系統概念》的衍生作品,授權根據知識共享署名許可證 3.0 許可
以下材料由 Adrienne Watt 編寫
- 介紹
- 關鍵詞
- 練習