資料庫系統是協助我們管理資料的系統。把辛苦收集的資料,得到妥善保護與管理。資料庫簡單地說就是資料彙集之地,存放具有不變性的資料(persistent data),可作為企業發展資訊系統之所需。
在我們生活中,其實時時刻刻都接觸到資料庫,只是自己不知道而已。想像一下,平時所收集到的名片,一般都會集結成冊。甚至會分門別類地擺放好,這就是建立一個最基本的資料庫。相同的概念,也可運用於書籍管理、收支管理、CD的管理、學生資料管理、人事薪資、庫存系統、會計系統等等,都是資料庫的應用。
以實體名片簿為例。將名片依產業別或區域別分類放好。但是,這個管理方式太簡陋。因為,妳只能用一種方式排列。當妳選擇以產業別排列時,就不能以區域別來排列。因為,一般交換名片時,只會給一張。再者,當收集到的名片量很多時,突然妳想找某一個人,但是只記得他姓跟名字的最後一個字。這時候,妳要找起來資料來也是很累人的,因為妳可能還是需要一張張找。
若以實體方式來實作資料庫系統,似乎不符合使用效率。除了不能作各種分類方法,也不能動態進行排序。此時,透過電腦來幫我們管理資料就是最佳時機了。這樣以電腦化的資料儲存管理系統,我們稱之為「資料庫系統」(Database System)。此類系統,應符合下列幾點功能:
透過電腦化所管理的資料系統,顯而易見的是可以減少紙本作業,節省人力成本,增加時效所得到的資訊也是即時性資料,而且資料集中易於管理。一個好的資料庫系統,應當具備有下列幾點好處。好壞是相對而非絕對,下列比較主要是與檔案式資料處理為主。
一般檔案式資料模式是每一個應用程式均有其專用檔案。這是從功能流程角度看資料的存在性。所以,既使資料是具有相同性,但在不同功能程序下,還會產生一份相同資料。因此,會造成資料大量重複且浪費儲存空間。資料庫模式,卻是從資料角度來看功能。相同性質的資料,會被優先考慮放在一起,再個別服務不同的功能。如此,就可以避免資料重複性。
此優點與前者是一體的兩面。由於資料是分散在不同得檔案中,若某功能對資料進行了CRUD的動作,就必須把與此資料相同的檔案,都要同步進行處理,否則就會發生資料不一致的現象了。以資料庫模式,因為資料只有一份,只要改一個地方,所有功能所產生的結果都會一致的。
在檔案式的資料管理中,當程式開啟資料檔案時,此資料檔案就會被鎖住,不容許其他的程式開啟。而資料庫模式是採集中式管理資料,所有的資料都可以同時分享給有需要用到此資料的系統使用。透過DBMS的管理機制,雖然為了避免資料不一致,也會鎖住資料,但不會鎖住整個資料庫,只鎖住部分資料而已。
所謂異動管理是確保資料處理作業,並不會受到網路斷線或者主機當機之影響,而造成資料損壞不一致的現象。讓資料庫的一些CRUD的動作封裝成一個資料庫異動,要整批完成後,才能算是所有的CRUD皆完成。
從資料需求的角度看資訊系統需求,採用集中式的資料庫管理模式之後,許多資料定義上就可以要求採取同一的標準了。除了可以考慮國際的標準之外,資料欄位的命名,以及資料內容值都可以規定採用統一的標準。
透過DBMS的帳戶管理,只有授與權限的人才有資格存取資料。甚至可以規定到,甚麼樣的人對甚麼樣的資料具有甚麼樣的CRUD權力。而且資料集中管理,可以很容易的做資料備份的工作。可以確保硬體系統毀損後,資料仍能保持最新狀況。
所謂資訊系統,是利用電腦設備建立可供使用者操弄資料的工作介面。被操弄的資料則是存放在資料庫系統中。
在瞭解資訊系統之前,應先瞭解「系統」的定義是甚麼。所謂的系統是指「在特定範圍內,一群成員為達成共同目標,彼此相互合作努力。」一般分類系統的方法有下列數種:
簡單地來說,資訊系統的目的是協助我們收集資料,並轉換成資訊的過程,,協助我們在進行決策時能得心應手。所謂的資訊系統一定是人為系統、實體系統、動態系統、開放系統。也就是說,一個資訊系統絕對是由人所建立起來的,他是真實存在的,而且會隨著時間改變資料內容,並且由人來操作,或者控制外面其他系統。
資訊系統的完整解釋為,有效運用人、資料、程序、溝通與資訊科技之間的交互關係,來支援和改進企業內部日常作業,進而提供使用者獲管理者解決問題或協助決策。所謂資訊科技是結合電腦技術(含硬體軟體)與通訊技術(資料、影像、聲音的網路)之統稱。
從前面討論中,隱約把一個資訊系統內所包含的重要成員給點出來了。資料庫系統是管理資料之用,是從資料的角度看系統。資訊系統是要符合企業流程之所需,是從流程的角度看系統。而讓大部分的使用者能夠操作使用,這是從使用者介面的角度看系統。因此資訊系統內三個重要元素,分別為資料、程序與介面。
資訊系統的發展,一定要整體考量這三個重要元素。從資料角度看問題的方法,是資訊工程所注重的問題,用ER Model(Entity-Relationship Model)來找出資料元素。從流程角度問題的方法,是傳統結構化分析所努力的,採用的技術有很多,一般有Flow Char,DFD(Data Flow Diagram),或IDEF0的方法工具。介面的部分就看要採用何種前台工具開發,有視窗介面的,有文字介面的,或者WEB介面。
本書的重點是協助讀者從資料角度,利用ER Model技術,分析出資訊系統所應包含的資料庫內容。