ORACLE ORA-00904 : 标识符无效 错误有以下几种情况:

  1. 首先检查字段名和表名是否写错
  2. 字段中是否包含了oracle中的关键字,查询时包含关键字的字段要用双引号括起来
  3. 建表语句中字段或表名带双引号了,查询时也要加双引号

备注:oracle 中的表名 、字段名 默认不区分大小写, 但是若建表语句中带双引号则区分,并且查询时要加双引号。

例如:

  • 若建表CREATE TABLE tablename (ID number);
    select id,ID from tablenameselect id,ID from Tablename 都能查询
    并且如果再建表CREATE TABLE Tablename (ID number); 会报错ORA-00955: name is already used by an existing object,在不加双引号的情况下,oracle认为 tablename 和Tablename 是一张表;
  • 若建表CREATE TABLE "tablename"("ID" number); 则表名、字段名区分大小写,并且查询时要加双引号;
    查询select ID from tablename 会报 ORA-00904
    正确查询要加双引号select "ID" from "tablename"
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐