对数据库字段使用默认值(1)

文章作者 100test 发表时间 2007:03:14 13:55:22
来源 100Test.Com百考试题网



在创建数据库表时,你可以指定一个 default 值(即默认值)。对数据库字段使用默认值有助于将数据库设计问题与应用程序代码隔离。
可以在以后某个时候通过一条 alter table 命令改变一个字段的默认值,改变之后应用程序代码会立即开始使用新值
有一点是很重要的,即 default 值只有当一个字段没有在 insert 或 merge 中指定值,或者使用了 default 关键字时才会使用。如果你不显式地声明一个 defulat 值,oracle 将隐式地将默认值定义为 null,而且 default 关键字也是这样。从 oracle 9i开始,可以在 default 子句中使用诸如 sysdate 或 current_timestampe 之类的伪字段。例如:
create table t1
(
id$ integer not null,
charcol char default ’y’,
datecol date default sysdate,
strcol varchar2(30) default user,
intcol integer default 12
).
insert into t1 (id$) values (1).
0select * from t1.

id$ c datecol strcol intcol
---------- - --------- ------------------------------ ----------
1 y 28-may-04 scott 12


default 关键字与insert、merge 或0update 语法比起来可以看上去没有那么必要,但是想一下如果你希望在插入一列数据时使用所有默认值,那么你就不会这么认为了。oracle 不接受insert into > 或insert into > values () 作为有效的 sql。必须指定至少一个字段,但是可以使用 default 关键字来允许使用默认值,而非硬编码值,所以下面是有效的语法,它将使用所有 default 值创建一行记录。
create table t2(charcol char default ’y’,datecol date default sysdate).
insert into t2 (charcol) values (default).
0select * from t2.

c datecol
- ---------
y 28-may-04

相关文章


ORACLE学习笔记之调节性能优化篇(1)
对数据库字段使用默认值(2)
Oracle9i数据库异常关闭后的启动
简单介绍Oracle数据库去除别名的方法
对数据库字段使用默认值(1)
案例学习Oracle错误:ORA-00922(2)
利用Oracle许可实现更好控制Linux
Oracle电子邮件数据库系统危机重挫CIO(1)
案例学习Oracle错误:ORA-00922(1)
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛