小编ChK*_*ChK的帖子

此处不允许使用 Oracle 列默认值

问题是关于使用第 4 行序列的 DEFAULT 值。

    CREATE OR REPLACE SEQUENCE CHANNEL_SEQ START WITH 1 INCREMENT BY 1;

    CREATE TABLE "CHANNEL" (  
    "ID_CHANNEL" NUMBER(18,0) DEFAULT CHANNEL_SEQ.NEXTVAL,  
    "IS_ACTIVE" VARCHAR2(1 CHAR) NOT NULL,  
    "BATCH_SIZE" NUMBER(3,0) NOT NULL,
    "MAX_DOCS_IN_PROCESS" NUMBER(4,0) NOT NULL,
    "RECEIVER_ID" NUMBER(18,0) NOT NULL,
    "LAST_POS_SESSION_TIME" DATE,
     CONSTRAINT "PK_CHANNEL" PRIMARY KEY ("ID_CHANNEL"),
     CONSTRAINT "FK_RECEIVER_ID_CHANNEL" FOREIGN KEY ("RECEIVER_ID") REFERENCES   "MSG_OUT"("MSG_OUT_ID"),
     CONSTRAINT "CHK_IS_ACTIVE" CHECK (IS_ACTIVE IN ('Y', 'N'))
   );
Run Code Online (Sandbox Code Playgroud)

错误消息是:

“SQL 错误:ORA-00984:此处不允许使用列”

欢迎所有帮助和提示。

oracle sequence default-value

4
推荐指数
1
解决办法
6520
查看次数

标签 统计

default-value ×1

oracle ×1

sequence ×1