1

当我创建这样的表时:

create table DBDI_HIREDETAIL(
HireID int not null,
EquipID int not null,
Quantity int,
TotalFee float,
Comment varchar(200)
);

错误发生如下:

命令行错误:“TotalFee float”错误报告:SQL 错误:ORA-00904: : 无效标识符 00904。00000 -“%s:无效标识符”

我不明白为什么我的代码有错误,它似乎很好。

4

2 回答 2

5

COMMENT是Oracle中的保留字;它用于向数据字典添加注释。您应该避免将其用作列名。

SQL> create table a ( comment number );
create table a ( comment number )
                 *
ERROR at line 1:
ORA-00904: : invalid identifier

如果你真的想使用这个列名,你必须引用它,即"COMMENT"

SQL> create table a ( "COMMENT" number );

Table created.

我建议您不要这样做,因为您必须在任何地方引用该列。

于 2012-10-01T15:18:28.377 回答
1

这是因为 COMMENT 是 SQL 中的保留字 - 请改用另一个列名(如 HIREDETAIL_COMMENT):

create table DBDI_HIREDETAIL(
  HireID int not null,
  EquipID int not null,
  Quantity int,
  TotalFee float,
  HireDetail_Comment varchar(200)
);
于 2012-10-01T15:18:47.400 回答