使用默认值创建表时检查约束?

时间:2014-01-03 04:41:09

标签: sql oracle11g

我正在使用oracle 11g。我正在创建一个几列的表。其中一列应具有一些默认值。 如果没有传递任何值,则必须考虑DEFAULT 。我可以这样做吗?

具有默认值的列:

ATTENDENT CHAR(1 BYTE) DEFAULT 'N'

约束:

CONSTRAINT "CC_ATTENDENT_CHECK" CHECK (attendent is not null and attendent in ('Y','N')) ENABLE

谢谢!

2 个答案:

答案 0 :(得分:0)

使用默认值创建/更改表时,如下所示:

Alter table table_test modify (foo varchar(3) NULL default 'bar');

...应该足以在插入null

时设置默认值

答案 1 :(得分:0)

是的你可以,

例如:

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255) DEFAULT 'Sandnes'
)