在MySQL中,约束操作主要用于确保表中的数据满足一定的规则。以下是一些常见的约束操作示例:
1. NOT NULL约束:确保某列的值不为空。
```sql
CREATE TABLE users (
id INT PRIMARY KEY,
username VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL
);
```
2. UNIQUE约束:确保某列的值唯一,即没有重复值。
```sql
CREATE TABLE users (
id INT PRIMARY KEY,
username VARCHAR(255) UNIQUE,
email VARCHAR(255) UNIQUE
);
```
3. FOREIGN KEY约束:用于建立表与表之间的关联关系。
```sql
CREATE TABLE orders (
id INT PRIMARY KEY,
user_id INT,
product_id INT,
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (product_id) REFERENCES products(id)
);
```
4. CHECK约束:用于限制某列的值的范围。
```sql
CREATE TABLE employees (
id INT PRIMARY KEY,
name VARCHAR(255),
age INT CHECK (age >= 18 AND age <= 65)
);
```
5. DEFAULT约束:为某列设置默认值。
```sql
CREATE TABLE users (
id INT PRIMARY KEY,
username VARCHAR(255) DEFAULT 'unknown',
email VARCHAR(255) DEFAULT 'unknown@example.com'
);
```