获取 ORA-00904::Oracle Application Express 中的无效标识符

Getting ORA-00904: : invalid identifier in oracle application express

我想在 Oracle Application Express 中创建这个简单的 table,但我一直收到错误

ORA-00904: : invalid identifier

我不知道为什么。

CREATE TABLE ArtWork (
    ArtWorkId NUMBER (6,0) CONSTRAINT aw_pk PRIMARY KEY,
    Name VARCHAR2 (20),
    Desc VARCHAR2 (25)
);

desc 是保留字(用于指定排序方向,例如在 order by 子句中)。

您需要用双引号将它括起来,或者最好将您的列名称更改为与语言关键字不冲突的名称,这样您以后就不用担心了:

CREATE TABLE ArtWork (
    ArtWorkId NUMBER (6,0) CONSTRAINT aw_pk PRIMARY KEY,
    Name VARCHAR2 (20),
    Description VARCHAR2 (25)
);

保留关键字不应用作标识符,因为它们用于隐式用法。因此,将 desc 更改为其他名称,例如 description