Oracle中data_default列为null和不为null,分别代表什么含义?

2024-11-24 05:07:19
推荐回答(2个)
回答1:

这和插入数据有关,当用insert插入数据时,如果不指定那一列,那拿穗册一列就会放入一个缺省值,也就是*_tab_columns列里的data_default值
比如一个表a
create table aa (a varchar2(2),b number default 88);
insert into aa (a) values ('a'); --这里未指定b这一列,那么它会被按照族燃定义,插入缺省值88
insert into aa (b) values (0);--这里未指消宏定a这一列,建表时也未指定缺省值,那么这一行a列将被插入空值
这里你可以查询字典

select column_name,data_default from user_tab_columns where table_name='AA';

回答2:

为null:缺省值为空;
不为null:缺省值不为空;