如果表中有空,则设置默认值

时间:2013-08-01 16:46:22

标签: sql database oracle

我有fdg_USER表的下面ddl

CREATE TABLE fdg_user (
  id          NUMBER(32,0)  NOT NULL, 
  updateddate TIMESTAMP(6)  NULL, 
  name        VARCHAR2(30)  NOT NULL,
  }

现在当我选择几行中的所有列时,我看到更新的列名称显示为null我想将默认值设置为名称为bbb,默认更新日期为05.03.13 05:29:34

我需要这样做,如果它们为null或者name为null则添加这两个的默认值,那么namedefault值应该是insertes或者if   date为null,然后插入日期值

2 个答案:

答案 0 :(得分:1)

创建表时,在每列上使用default defaultvalue。见这里:http://www.techrepublic.com/article/oracle-tip-how-to-use-default-values-with-database-columns/

看起来像这样:

CREATE TABLE fdg_user (
    id          NUMBER(32,0) NOT NULL, 
    updateddate TIMESTAMP(6) DEFAULT TO_TIMESTAMP('05.03.13 05:29:34','dd.mm.yy hh24:mi:ss') NULL , 
    name        VARCHAR2(30) DEFAULT 'bbb' NOT NULL 
)

请参阅sqlfiddle

答案 1 :(得分:0)

这应该可以解决问题

CREATE TABLE fdg_user (
    id NUMBER(32,0) NOT NULL, 
    updateddate TIMESTAMP(6) NULL DEFAULT "05.03.13 05:29:34", 
    name VARCHAR2(30)  NOT NULL DEFAULT "bbb"
)