Oracle中表级列的默认值控制


1、 脚本及测试步骤

--1、建测试表
create table tab_default(id varchar2(2),default_sysdate date,default_char_date varchar2(8),default_guid varchar2(100));
--2、添加默认值束缚
alter table tab_default modify default_sysdate date default sysdate;
alter table tab_default modify default_char_date VARCHAR2(100) default to_char(sysdate,'YYYYMMDD');
alter table tab_default modify default_guid VARCHAR2(100) default sys_guid();
--3、测试数据插入
insert into tab_default(id)
select '1' from dual;
commit;
insert into tab_default(id)
select '2' from dual;
commit;
insert into tab_default(id)
select '3' from dual;
commit;
--4、结果查看
select * from tab_default;

2、 注意事项

--1、默认值取值方法
--不可以如下
insert into tab_default(id, default_sysdate)
  select '1', null from dual;
--只可以如下(即,在数据插入的时候,只需要将要插入的字段列出,需要默认值的字段不管就可以了)
insert into tab_default(id)
  select '1' from dual;
--2、也可以在建表的时候直接赋默认值
drop table tab_default;
CREATE TABLE tab_default(col_date date DEFAULT sysdate);

相关内容