在關聯式資料庫中,基本的資料結構是“二維表”,表之間的聯繫透過不同表中的公共欄位來體現。關係型資料庫,是指採用關聯式模型來組織資料的資料庫;而關係模型可以簡單理解為二維表格模型,即一個關係型資料庫是由二維表及其之間的關係所組成的資料組織。
本教學操作環境:windows7系統、Dell G3電腦。
關係型資料庫,是指採用了關係模型來組織資料的資料庫,其以行和列的形式儲存數據,以便於使用者理解,關係型資料庫這一系列的行和列被稱為表,一組表組成了資料庫。使用者透過查詢來檢索資料庫中的數據,而查詢則是用於限定資料庫中某些區域的執行程式碼。關係模型可以簡單理解為二維表格模型,而關係型資料庫就是由二維表及其之間的關係所組成的資料組織。
關聯式資料庫中,基本資料結構是二維表,表之間的聯繫透過不同表中的公共欄位來體現。各個關係模型並不是孤立的,它們不是隨意堆砌在一起的一堆二維表,要正確反映事物及事物之間的聯繫,需要進行仔細的關係資料庫設計。
特點:
1.儲存方式:傳統的關係型資料庫採用表格的儲存方式,資料以行和列的方式進行存儲,要讀取和查詢都十分方便。
2.儲存結構:關係型資料庫依照結構化的方法儲存數據,每個資料表都必須對各個欄位定義好(也就是先定義好表格的結構),再根據表格的結構存入數據,這樣做的好處就是由於數據的形式和內容在存入數據之前就已經定義好了,所以整個數據表的可靠性和穩定性都比較高,但帶來的問題就是一旦存入數據後,如果需要修改資料表的結構就會十分困難。
3.儲存規範:關係型資料庫為了避免重複、規範化資料以及充分利用好儲存空間,把資料按照最小關係表的形式進行存儲,這樣資料管理的就可以變得很清晰、一目了然,當然這主要是一張數據表的情況。如果是多張表情況就不一樣了,由於資料涉及多張資料表,資料表之間存在著複雜的關係,隨著資料表數量的增加,資料管理會越來越複雜。
4.擴展方式:由於關係型資料庫將資料儲存在資料表中,資料操作的瓶頸出現在多張資料表的操作中,而且資料表越多這個問題越嚴重,如果要緩解這個問題,只能提升處理能力,也就是選擇速度更快效能更高的計算機,這樣的方法雖然可以一定的拓展空間,但這樣的拓展空間一定有非常有限的,也就是關係型資料庫只具備縱向擴展能力。
5.查詢方式:關係型資料庫採用結構化查詢語言(即SQL)來對資料庫進行查詢,SQL早已獲得了各個資料庫廠商的支持,成為資料庫產業的標準,它能夠支援資料庫的CRUD(增加,查詢,更新,刪除)操作,具有非常強大的功能,SQL可以採用類似索引的方法來加快查詢操作。
6.標準化:在資料庫的設計開發過程中開發人員通常會面對同時需要對一個或多個資料實體(包括數組、列表和嵌套資料)進行操作,這樣在關係型資料庫中,一個資料實體一般首先要分割成多個部分,然後再對分割的部分進行規範化,規範化以後再分別存入到多張關係型資料表中,這是一個複雜的過程。好消息是隨著軟體技術的發展,相當多的軟體開發平台都提供一些簡單的解決方法,例如,可以利用ORM層(也就是物件關聯映射)將資料庫中物件模型對應到基於SQL的關係型資料庫中去以及進行不同類型系統的資料之間的轉換。
7.事務性:關係型資料庫強調ACID規則(原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)),可以滿足對事務性要求較高或需要進行複雜資料查詢的資料操作,而且可以充分滿足資料庫操作的高效能和操作穩定性的要求。且關係型資料庫十分強調資料的強一致性,對於交易的操作有很好的支持。關係型資料庫可以控制事務原子性細粒度,並且一旦操作有誤或有需要,可以馬上回滾事務。
8.讀寫效能:關聯式資料庫十分強調資料的一致性,並為此降低讀寫效能付出了巨大的代價,雖然關聯式資料庫儲存資料和處理資料的可靠性很不錯,但一旦面對大量資料的處理的時候效率就會變得很差,特別是遇到高並發讀寫的時候效能就會下降的非常厲害。
9.授權方式:關係型資料庫常見的有Oracle,SQLServer,DB2,Mysql,除了Mysql大多數的關係型資料庫如果要使用都需要支付一筆價格高昂的費用,即使是免費的Mysql效能也受到了許多的限制。
更多相關知識,請造訪常見問題欄位!
以上是在關聯式資料庫中,基本的資料結構是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!