簡體   English   中英

Oracle SQL-“缺少關鍵字”

[英]Oracle SQL - “missing keyword”

我正在嘗試在Oracle SQL中創建一個簡單的表。 對應的代碼在SQL Management Studio中工作正常,但在Oracle APEX中工作不正常。

以下查詢:

CREATE TABLE Conference(
ConferenceID NUMBER GENERATED ALWAYS AS IDENTITY
(START WITH 100
INCREMENT BY 10
MINVALUE 100
MAXVALUE 100000
NO CYCLE),
Director VARCHAR(25) NOT NULL,
School Size NUMBER NOT NULL,
Location VARCHAR(50) NOT NULL,
CONSTRAINT pk_Conference PRIMARY KEY (ConferenceID)
);

反復遇到以下錯誤:

ORA-02000:丟失(關鍵字

我已經盡職調查在這里這里這里尋找解決這個問題的方法。

我檢查了標識列部分以及此處的“主鍵”語法,一切看起來都不錯。 盡管如此,我找不到解決方案。

好的,在文檔中,查看列定義的標識選項 在這種情況下,這是一個很小的錯字NOCYCLE選項是一個單詞; 沒有空間。

您還有另一個問題,那就是School Size不是有效的列名。 其中有一個空格,沒有引用。 您可以執行School_Size"School Size" 我建議使用第一個,因為雙引號的列名區分大小寫並且使用起來確實很煩人。

編輯:而且, 它們在技術上是同義詞,但是Oracle建議使用VARCHAR2而不是VARCHAR

CREATE TABLE Conference(
    ConferenceID NUMBER GENERATED ALWAYS AS IDENTITY
    (START WITH 100
    INCREMENT BY 10
    MINVALUE 100
    MAXVALUE 100000
    NOCYCLE),
    Director VARCHAR2(25) NOT NULL,
    School_Size NUMBER NOT NULL,
    Location VARCHAR2(50) NOT NULL,
    CONSTRAINT pk_Conference PRIMARY KEY (ConferenceID)
);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM