首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在创建表时声明默认约束

在创建表时,可以声明默认约束,以确保在插入新数据时,特定列的值符合预期。默认约束可以在创建表时定义,也可以在创建表后添加。

默认约束的定义方式如下:

代码语言:txt
复制
CREATE TABLE table_name (
    column1 data_type constraint_name DEFAULT default_value,
    column2 data_type,
    ...
);

其中,constraint_name 是默认约束的名称,可以自定义,default_value 是默认值。

例如,如果要在创建一个名为 employees 的表,其中包含 nameagedepartment 列,并且要求在插入新数据时,如果未指定 department 列的值,则默认为 "Unknown",可以使用以下 SQL 语句:

代码语言:txt
复制
CREATE TABLE employees (
    name VARCHAR(50),
    age INT,
    department VARCHAR(50) DEFAULT 'Unknown'
);

在创建表后,也可以使用 ALTER TABLE 语句添加默认约束。例如,如果要在上面的 employees 表中添加一个名为 salary 的列,并且要求在插入新数据时,如果未指定 salary 列的值,则默认为 0,可以使用以下 SQL 语句:

代码语言:txt
复制
ALTER TABLE employees
ADD salary DECIMAL(10,2) DEFAULT 0;

需要注意的是,如果在创建表时声明了默认约束,但在插入数据时又显式地指定了该列的值,则默认约束不会生效。例如,如果在上面的 employees 表中插入一条新数据,并且指定了 department 列的值为 "HR",则默认约束不会生效,数据将被插入到 department 列中。

代码语言:txt
复制
INSERT INTO employees (name, age, department)
VALUES ('John Doe', 30, 'HR');
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券