資料庫是有組織的數據集合。資料庫處理程式以這樣一種方式創建資料庫,即只有一組軟體程式為所有用戶提供數據訪問。
資料庫的主要目的是通過存儲,檢索和管理來操作大量數據資訊。互聯網上有許多動態網站,通過資料庫處理。 例如,用於檢查酒店房間可用性的模型。 它是使用資料庫的動態網站的一個例子。
有許多資料庫可用,如: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
表中的字段由:ID
,NAME
,AGE
,ADDRESS
和SALARY
組成。
字段是表中的一列,用於維護表中每條記錄的特定資訊。
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)