MySQL約束的概念
在數據庫中,約束是一種限制數據存儲和修改的規則,MySQL支持在表中設置多個約束,包括主鍵、外鍵、非空、唯一等。
使用MySQL設置主鍵約束
主鍵約束用于標識數據表中每一行的唯一性,一般使用自增長整數類型。
使用以下語句在創建數據表時設置主鍵約束:
CREATE TABLE students ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) NOT NULL, age INT, gender CHAR(1), );
使用MySQL設置外鍵約束
外鍵約束用于表之間的關聯,通常用于建立兩個或多個表之間的關系。
使用以下語句在創建數據表時設置外鍵約束:
CREATE TABLE orders ( order_id INT PRIMARY KEY, customer_id INT NOT NULL, order_date DATE, FOREIGN KEY (customer_id) REFERENCES customers(customer_id) );
使用MySQL設置非空約束
非空約束用于限制某個字段值不能為空。
使用以下語句在創建數據表時設置非空約束:
CREATE TABLE employees ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, age INT NOT NULL, gender CHAR(1) NOT NULL, );
使用MySQL設置唯一約束
唯一約束用于限制某個字段值不能重復,不像主鍵約束可以為空。
使用以下語句在創建數據表時設置唯一約束:
CREATE TABLE products ( product_id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, price DECIMAL(10,2) NOT NULL, UNIQUE (name) );