溫馨提示×

SQL CHECK約束表達式怎么寫

sql
小億
767
2023-10-12 11:49:39
欄目: 云計算

SQL CHECK約束用于限制列中的值必須滿足指定的條件。CHECK約束可以在創建表時定義,也可以在修改表時添加。

CHECK約束的語法如下:

```sql
ALTER TABLE table_name
ADD CONSTRAINT constraint_name CHECK (condition);
```

其中,table_name是要添加約束的表名,constraint_name是約束的名稱(可選),condition是一個邏輯表達式,用于定義該列的取值范圍。

以下是一些CHECK約束的示例:

1. 限制age列的取值范圍為18至65歲之間:
```sql
ALTER TABLE employees
ADD CONSTRAINT check_age CHECK (age >= 18 AND age <= 65);
```

2. 限制gender列的取值只能為'M'或'F':
```sql
ALTER TABLE employees
ADD CONSTRAINT check_gender CHECK (gender IN ('M', 'F'));
```

3. 限制salary列的取值不能為負數:
```sql
ALTER TABLE employees
ADD CONSTRAINT check_salary CHECK (salary >= 0);
```

4. 限制birth_date列的取值必須在'1980-01-01'和'2000-12-31'之間:
```sql
ALTER TABLE employees
ADD CONSTRAINT check_birth_date CHECK (birth_date >= '1980-01-01' AND birth_date <= '2000-12-31');
```

注意,CHECK約束只能應用于單個列,如果需要對多個列添加約束,可以使用UNIQUE約束或FOREIGN KEY約束。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女