Python | 數據庫中的表

本文首發於微信公衆號:"算法與編程之美",歡迎關注,及時瞭解更多此係列文章。

問題描述

表(TABLE)是數據庫中用來存儲數據的對象,是有結構的數據的集合,是整個數據庫系統的基礎。SQL數據庫中用於存儲數據的工具。

表是包含數據庫中所有數據的數據庫對象。

表定義爲列的集合。與電子表格相似,數據在表中式按行和列的格式組織排列的。表中的每一列都設計爲存儲某種類型的信息(例如日期、名稱、美元金額或數字)。表上有幾種控制(約束、規則、默認值和自定義用戶數據類型)用於確保數據的有效性。


解決方案

1 三大範式

第一範式:強調的是表中列的原子性(原子性:指事務的不可分割性,一個事務的所有操作要麼不間斷地全部被執行,要麼一個也沒有執行),可以理解爲該列不能夠分成其他的幾列。

第二範式:保證表中必須有一個主鍵;表的每一列都必須和該表的主鍵相關(主鍵的所有部分,不能是主鍵的一部分)。

第三範式:確保表中的每一列都直接和主鍵相關聯,即不能存在傳遞依賴(非主鍵列1依賴於非主鍵列2,非主鍵列2依賴於主鍵)的情況)。

2 主鍵與外鍵

1 主鍵:主鍵是指在表中可以唯一表示表中每一行的一列(或列的組合)。其特點是:不可以重複,不可以爲空,一個表只能有一個主鍵。

例如:表(賬號,暱稱,密碼)中賬號列就滿足其特點可以充當表的主鍵。

2) 外鍵:外鍵是將兩個表連接在一起的鍵,一個表的主鍵可以在另一個表中當作這個表的外鍵,進而將兩個表連接在一起。其特點是:可以重複,可以爲空,一個表可以有多個外鍵。

例如:表1(賬號,暱稱,密碼)中的賬號列(主鍵)就可以在表2(身份證id,名字,性別,生日,住址,賬號)中的外鍵,從而將表1和表2關聯起來。


結語

在數據庫的建立中滿足三大範式可以很大程度上的減小數據庫的冗餘,提升數據庫的性能;主鍵的正確建立可以保證數據的唯一性外鍵的正確建立可以保證數據的完整性和一致性,同時將不同的表關聯在一起




實習編輯:李欣容

稿件來源:深度學習與文旅應用實驗室(DLETA)

本文分享自微信公衆號 - 算法與編程之美(algo_coding)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章