来自SQL Server,我正在学习一些Oracle语法。在Oracle SQL中创建默认约束
这是我的表DDL
CREATE TABLE "CDR"."EXTDL_REPORTSETS"
(
"ID" NUMBER(38,0) NOT NULL ENABLE,
"SHORTNAME" NUMBER(38,0) NOT NULL ENABLE,
"DESCRIPTION" NUMBER(38,0) NOT NULL ENABLE,
"ASOFSTARTDATETIME" NUMBER(38,0) NOT NULL ENABLE,
"ASOFENDDATETIME" NUMBER(38,0) NOT NULL ENABLE,
CONSTRAINT "PK_EXTDL_REPORTSETS" PRIMARY KEY ("ID") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "CDR_DATA" ENABLE
)
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING STORAGE
(
INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT
)
TABLESPACE "CDR_DATA" ;
我想预设ASOFSTARTDATETIME到SYSDATE。如何在PL/SQL中设置默认约束?
编辑
的数据类型已经得到搞砸了,所以我纠正它。
CREATE TABLE CDR.ExtDL_Reportsets(
Id NUMBER(38, 0) NOT NULL,
ShortName VARCHAR2(255) NOT NULL,
Description VARCHAR2(500) NOT NULL,
AsOfStartDateTime DATE NOT NULL,
AsOfEndDateTime DATE,
CONSTRAINT PK_ExtDL_Reportsets PRIMARY KEY (Id)
)
;
我的数据模型被损坏和拖欠一切号(38,0)。我将列更改回其原始数据类型。 – 2010-08-09 20:00:18
这很糟糕 - 我更新了我的答案以反映正确的数据类型。 – 2010-08-09 20:09:58
嘿!如果我能加倍努力让你付出努力,我会的! – 2010-08-09 20:16:06