RDBMS概念

資料庫是有組織的數據集合。資料庫處理程式以這樣一種方式創建資料庫,即只有一組軟體程式為所有用戶提供數據訪問。
資料庫的主要目的是通過存儲,檢索和管理來操作大量數據資訊。互聯網上有許多動態網站,通過資料庫處理。 例如,用於檢查酒店房間可用性的模型。 它是使用資料庫的動態網站的一個例子。

有許多資料庫可用,如:MySQL,Sybase,Oracle,Mango DB,Informix,Postgre,SQL Server等。SQL或結構化查詢語言用於對存儲在資料庫中的數據執行操作。 SQL依賴於關係代數和元組關係演算。

1. 表

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

請記住,表是關係資料庫中最常見,最簡單的數據存儲形式,它有行和列組成。 以下程式是Customer表的示例 -

+------+--------+------+-------------+------------+
| ID   | NAME   | AGE  | ADDRESS     | SALARY     |
+------+--------+------+-------------+------------+
|  1   | 張三   |  32  | Haikou      |  2000.00   |
|  2   | 李四   |  25  | Guangzhou   |  1500.00   |
|  3   | 王五   |  25  | Haikou      |  2000.00   |
|  4   | 張飛   |  25  | Beijing     |  6500.00   |
|  5   | 張洪文 |  37  | Shanhai     |  18500.00  |
|  6   | 蘇小牛 |  22  | Beijing     |  4500.00   |
|  7   | 杜博   |  24  | Shenzhen    |  6700.00   |
+------+--------+------+-------------+------------+

2. 字段

每個表都被分解為稱為字段(也叫列)。 Customer表中的字段由:IDNAMEAGEADDRESSSALARY組成。

字段是表中的一列,用於維護表中每條記錄的特定資訊。

3. 記錄或行

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

+------+--------+------+-------------+------------+
|  1   | 張三   |  32  | Haikou      |  2000.00   |
+------+--------+------+-------------+------------+

記錄是表中的水準實體。

4.列(字段)

列是表中的垂直實體,包含與表中特定字段關聯的所有資訊。
例如,Customer表中的一列是ADDRESS,用於表示客戶的地址,如下所示 -

+-------------+
| ADDRESS     |
+-------------+
| Haikou      |
| Guangzhou   |
| Haikou      |
| Beijing     |
| Shanhai     |
| Beijing     |
| Shenzhen    |
+-------------+

5. NULL值

表中的NULL值是字段中顯示為空的值,這意味著具有NULL值的字段是沒有任何值的字段。

瞭解NULL值與零值或包含空格的字段不同非常重要。 具有NULL值的字段是在創建記錄期間留空的字段,它不表示什麼值。當一個字段不確定要存儲什麼內容時,可以使用NULL值來表示。

6. SQL約束

約束是對表上的數據列強制執行的規則。 這些用於限制可以進入表的數據類型。 這確保了資料庫中數據的準確性和可靠性。
約束可以是列級別或表級別。 列級約束僅應用於一列,而表級約束應用於整個表。
以下是SQL中可用的一些最常用的約束 -

  • NOT NULL約束 - 確保列不能具有NULL值。
  • 默認值約束 - 在未指定列時為列提供默認值。
  • 唯一約束 - 確保列中的所有值都不同。
  • 主鍵 - 唯一標識資料庫表中的每一行/記錄。
  • 外鍵 - 唯一標識任何其他資料庫表中的行/記錄。
  • 檢查約束 - CHECK約束確保列中的所有值都滿足特定條件。
  • 索引 - 用於非常快速地從資料庫創建和檢索數據。

7. 數據的完整性

每個RDBMS都存在以下類別的數據完整性 -

  • 實體完整性 - 表中沒有重複的行。
  • 域完整性 - 通過限制值的類型,格式或範圍,為給定列強制執行有效條目。
  • 參照完整性 - 其他記錄使用(引用)導致這些行無法刪除。
  • 用戶定義的完整性 - 實施一些不屬於實體,域或參照完整性的特定業務規則。

8. 資料庫範式

資料庫範式是在資料庫中有效組織數據的過程。主要有兩個原因 -

  • 消除冗餘數據,例如,將相同數據存儲在多個表中。
  • 確保數據依賴性是有意義的。

這兩個原因都是值得的,因為它們減少了資料庫消耗的空間量並確保了數據的邏輯存儲。 範式包含一系列指南,可幫助指導您創建良好的資料庫結構。

可將表單視為資料庫結構的格式或方式。 這樣的目的是組織資料庫結構,使其符合第一範式的規則,然後是第二範式,最後是第三範式。

可以選擇進一步採用它並轉到第四範式,第五範式等等,但總的來說,第三範式是夠用了。

  • 第一範式(1NF)
  • 第二範式(2NF)
  • 第三範式(3NF)

上一篇: SQL簡介 下一篇: SQL資料庫