SQL - 關係資料庫管理系統 (RDBMS) 概念



什麼是 RDBMS?

RDBMS 代表。RDBMS 是 SQL 的基礎,也是所有現代資料庫系統(如 MS SQL Server、IBM DB2、Oracle、MySQL 和 Microsoft Access)的基礎。

關係資料庫管理系統 (RDBMS) 是一種基於 E. F. Codd 在 1970 年提出的關係模型的資料庫管理系統 (DBMS)。

什麼是表?

RDBMS 中的資料儲存在稱為的資料庫物件中。該表基本上是相關資料條目的集合,它由許多列和行組成。

記住,表是關係資料庫中最常見和最簡單的形式的資料儲存。以下是儲存客戶 ID、姓名、年齡、薪水、城市和國家的 CUSTOMERS 表的示例:

ID 姓名 年齡 薪水 城市 國家
1 Ramesh 32 2000.00 海德拉巴 印度
2 Mukesh 40 5000.00 紐約 美國
3 Sumit 45 4500.00 馬斯喀特 阿曼
4 Kaushik 25 2500.00 加爾各答 印度
5 Hardik 29 3500.00 博帕爾 印度
6 Komal 38 3500.00 薩哈蘭普爾 印度
7 Ayush 25 3500.00 德里 印度
8 Javed 29 3700.00 德里 印度

什麼是欄位?

每個表都被分解成稱為欄位的較小實體。欄位是表中的一列,旨在維護有關表中每條記錄的特定資訊。

例如,我們的 CUSTOMERS 表包含 ID、姓名、年齡、薪水、城市和國家等不同的欄位。

什麼是記錄或行?

記錄也稱為資料行,是表中存在的每個單獨條目。例如,上面的 CUSTOMERS 表中有 7 條記錄。以下是 CUSTOMERS 表中的一行資料或記錄:

ID 姓名 年齡 薪水 城市 國家
1 Ramesh 32 2000.00 海德拉巴 印度

記錄是表中的水平實體。

什麼是列?

列是表中的垂直實體,包含與表中特定欄位相關的所有資訊。

例如,我們的 CUSTOMERS 表具有不同的列來表示 ID、姓名、年齡、薪水、城市和國家。

什麼是 NULL 值?

表中的 NULL 值是指欄位中看起來為空的值,這意味著具有 NULL 值的欄位是沒有值的欄位。

重要的是要理解,NULL 值不同於零值或包含空格的欄位。具有 NULL 值的欄位是在記錄建立過程中留空的欄位。下表有三條記錄,第一條記錄的薪水為 NULL 值,第二條記錄的薪水為零值。

ID 姓名 年齡 薪水 城市 國家
1 Ramesh 32 海德拉巴 印度
2 Mukesh 40 00.00 紐約 美國
3 Sumit 45 4500.00 馬斯喀特 阿曼

SQL 約束

約束是對錶上資料列強制執行的規則。這些用於限制可以進入表的資料庫型別。這確保了資料庫中資料的準確性和可靠性。

約束可以是列級或表級。列級約束僅應用於一列,而表級約束應用於整個表。

以下是 SQL 中一些最常用的約束:

序號 約束
1 NOT NULL 約束

確保列不能具有 NULL 值。

2 DEFAULT 約束

在未指定任何值時,為列提供預設值。

3 唯一鍵

確保列中的所有值都不同。

4 主鍵

唯一標識資料庫表中的每一行/記錄。

5 外部索引鍵

唯一標識任何其他資料庫表中的每一行/記錄。

6 CHECK 約束

確保列中的所有值都滿足某些條件。

7 索引約束

用於非常快速地建立和檢索資料庫中的資料。

資料完整性

每個 RDBMS 都存在以下類別的資料完整性:

  • 實體完整性 - 確保表中沒有重複行。

  • 域完整性 - 透過限制值的型別、格式或範圍來強制執行給定列的有效條目。

  • 參照完整性 - 不能刪除其他記錄使用的行。

  • 使用者定義的完整性 - 強制執行不屬於實體、域或參照完整性的某些特定業務規則。

資料庫規範化

資料庫規範化是有效組織資料庫中資料的過程。規範化過程有兩個原因:

  • 消除冗餘資料,例如,將相同的資料儲存在多個表中。

  • 確保資料依賴性有意義。

這兩個原因都是值得的目標,因為它們減少了資料庫佔用的空間並確保資料以邏輯方式儲存。規範化包括一系列指導原則,可幫助您建立良好的資料庫結構。

規範化指導原則分為正規化;將正規化視為資料庫結構的格式或佈局方式。正規化的目標是組織資料庫結構,使其符合第一正規化、第二正規化和最終第三正規化的規則。

您可以進一步將其擴充套件到第四正規化、第五正規化等等,但通常情況下,第三正規化對於普通的資料庫應用程式已經足夠了。

廣告