如何在 SQL 数据库中限制年龄
网站编辑2023-05-21 15:22:171009
在 SQL 数据库中,我们可以使用 INT 数据类型来存储年龄。INT 数据类型可以存储整数,因此它非常适合存储年龄。

为了限制年龄,我们可以在创建表时添加约束。约束是一种规则,它可以限制表中的数据。在这种情况下,我们可以使用 CHECK 约束来限制年龄。
以下是一个示例 SQL 语句,它创建了一个名为 Person 的表,并在其中添加了一个 CHECK 约束来限制年龄必须在 18 到 100 岁之间:
```
CREATE TABLE Person (
ID INT PRIMARY KEY,
Name VARCHAR(50),
Age INT CHECK (Age >= 18 AND Age <= 100)
);
```
在上面的 SQL 语句中,我们使用 CHECK 约束来限制 Age 列的值必须大于或等于 18,且小于或等于 100。
为了测试约束是否有效,我们可以尝试向表中插入一个年龄小于 18 或大于 100 的值。如果约束有效,则插入操作将失败,并显示一个错误消息。
以下是一个示例 SQL 语句,它尝试向 Person 表中插入一个年龄为 16 的记录:
```
INSERT INTO Person (ID, Name, Age) VALUES (1, 'John', 16);
```
如果约束有效,则插入操作将失败,并显示以下错误消息:
```
The INSERT statement conflicted with the CHECK constraint "CK_Person_Age". The conflict occurred in database "YourDatabaseName", table "dbo.Person", column 'Age'.
```
通过使用 CHECK 约束,我们可以在 SQL 数据库中限制年龄。这种方法可以确保表中的数据始终符合我们的要求,并且可以防止插入无效的数据。







