Oracle给列设置默认值的方法(oracle列默认值)
  iDU31ygkXmx7 2023年11月19日 14 0

Oracle给列设置默认值的方法

Oracle的默认值是列使用时缺省需要填充的值,可以有效的降低 DBA 和程序员的开发难度。在Oracle中,如果你需要给表列设置默认值,可以通过以下两种方法来实现:

1. 使用create table语句在创建表的时候直接指定默认值:

例如,下面的语句中,给表FK_tab的列def_val设置了默认值为1000的缺省值:

“`SQL

create table FK_Tab

(

def_val number(2) default 1000 not null

);


2. 使用alter table语句给已经存在的表添加列或者是修改列的默认值:

例如,下面的语句中,修改表FK_Tab的列def_val的默认值为1000:
```SQL
alter table FK_Tab
modify def_val number(2) default 1000 not null;

除了以上两种方法设置默认值,我们也可以用系统定义函数default函数来设置默认值。可以用定义函数将一个列的默认值设置为调用该函数的参数:

“`SQL

create table Demo

(

name varchar2(10) default (‘abc’) not null

);

create or replace function f_default

return varchar2

is

v_name varchar2(10) := ‘pqr’;

begin

return v_name;

end;

/

alter table Demo

modify name varchar2(10)

default (sys.f_default) not null;

上面的示例中,我们定义了一个名为f_default的函数,这样我们就可以给表Demo的name列设置为默认值‘pqr’。在运行alter table修改列的语句时,将参数指定为sys.f_default,当我们的列未赋值时,则会调用我们定义的函数来提供缺省值。
总之,用Oracle给列设定缺省值,可以采用上述三种方法中的一种来实现,这种优势极大的减轻了程序员的工作量,也可以以通过它们来简化数据库开发过程。
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月19日 0

暂无评论

推荐阅读
  Vn37uiKQIsdv   2023年12月06日   24   0   0 网络层链路IP
  n4CHhQlV5v8U   2023年11月19日   30   0   0 服务器sip运营商IP
  tprTMCWDkFAR   2023年12月06日   38   0   0 用户名APIIP
  xWYnr39PTA9E   2023年11月19日   32   0   0 服务器UserIP
IP
  xWYnr39PTA9E   2023年11月19日   37   0   0 子网掩码子网IP
iDU31ygkXmx7