PHP學習還在繼續中,不過在一些大型PHP交流論壇遇到一些朋友對最基本的資料庫概念並不清楚,便產生寫此文的念頭!
(一)概念
資料庫是一中資訊的集合,每個集合都包含一條或多條形式統一的記錄,記錄由欄位構成.通常將集合稱為表,將記錄稱為表中的行.
資料庫一般分為:一般檔案資料庫(TEXT),層次化資料庫,網路資料庫,關聯式資料庫(mysql),對象與對象關係型資料庫!
(二)關係型資料庫是程式員開發軟體的解放
由於平件檔案資料庫,必須直接與作業系統聯絡,當應用程式需要編輯這種資訊時,必須確保欄位與有正確的形式.這種形式的介面代價昂貴,因為她需要一種第3代語言(3GL),需要有掌握高度技能的人員進行長時間的開發!比如程式員必須考慮資料的邏輯和物理表示,比如要從檔案裡讀取一個整數,程式員需要知道它是寫成文本形式還是二進位形式。資料在檔案和應用程式之間流動時,必須遵循一定的約定。所以一般檔案資料庫程式的高效性一般取決於程式員的辛勤與水平!相對於MYSQL由於實現了資料的獨立性,也實現了結構的獨立性!因此程式員無須承受資料管理的負擔!拋開了很多資料庫處理的內部細節!這便是RDBMS產生最重要的理由!也是她普及的理由!
(三)優秀的程式--對象關聯式資料庫模型
資料庫模型裡,MYSQL是一種關係型資料庫,但是關聯式模式並不是MYSQL的專利,資料庫理論的革新正在繼續,先進技術的一些基本原理也可以用於關聯式模式,如果你是精通3GL的程式員,使用一般檔案資料庫不僅可以開發出優秀的程式!而且在基層資料處理,編程式控制制,資源利用上,都有很大的優勢! 如果需要對大量資料進行頻繁的讀寫!,可以使用定位指標讀取指定的資料,定長索引, 所謂的負載問題,迎刃而解,控制起來也非常靈活,方便,安全問題,層次化與網路模型的並發性模型都可以利用!當然最重要的是程式員的敏覺性,設計完善的索引表,是置關重要的!
而MYSQL的優勢主要在於他的實體儲存體:MYLSAM表支援3種行方式以及定長行思想對資料處理靈活,並利用檔案描述符來讀寫表,系統記憶體方面的緩衝和緩衝等都是MYSQL快速的資料處理能力原因!同時你可以利用實體儲存體帶來的方便對資料進行修複,磁碟重組等!
相信只要你擁有優秀的資料庫模型,無論你採用什麼類型的資料庫,你所開發的一定是優秀的程式!