MySQL是一種關系型數據庫管理系統(RDBMS),它支持數據完整性和安全性。完整性約束是一種數據庫設計技術,用于確保數據庫表中存儲的數據的正確性。這篇文章將為您介紹MySQL中各種完整性約束的語句大全。
1. 主鍵約束 主鍵是一種特殊的完整性約束,用于確保表中每行數據的唯一性。主鍵表達式必須滿足以下條件: - 不能是空值 NULL - 不能重復 - 必須能唯一標識每一行數據 以下是創建主鍵的語句: CREATE TABLE table_name( id INT(11) PRIMARY KEY, name VARCHAR(50) ); 2. 外鍵約束 外鍵用于連接兩個表的數據,確保數據的完整性。在MySQL中,外鍵約束必須參照另一個表的主鍵。以下是創建外鍵的語句: CREATE TABLE customers( id INT(11) PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE orders( id INT(11) PRIMARY KEY, order_number INT(11), customer_id INT(11), FOREIGN KEY(customer_id) REFERENCES customers(id) ); 3. 唯一約束 唯一約束確保表中列的值是唯一的。與主鍵不同,唯一約束列可以包含 NULL 值。以下是創建唯一約束的語句: CREATE TABLE table_name( id INT(11), name VARCHAR(50) UNIQUE ); 4. 檢查約束 檢查約束用于確保表中列的值符合指定的條件。以下是創建檢查約束的語句: CREATE TABLE table_name( id INT(11), name VARCHAR(50), age INT(11) CHECK (age >= 18) ); 5. 非空約束 非空約束確保表中列的值不能為空。以下是創建非空約束的語句: CREATE TABLE table_name( id INT(11), name VARCHAR(50) NOT NULL );
以上就是MySQL中常用的完整性約束的語句大全。在設計數據庫表結構時,根據實際情況選擇適當的約束可以極大地提高數據庫的數據完整性和安全性,從而避免出現數據錯誤或泄漏的情況。