Vic*_*tor 28 oracle oracle10g ora-00904
我在执行hibernate sql查询时看到一个错误.
java.sql.SQLException:ORA-00904:"table_name"."column_name":无效的标识符
当我在sqldeveloper中打开表时,列就存在了.
错误仅发生在PROD中,而不是发生在DEV中.
我该怎么检查?
Jon*_*ler 27
这可能是一个区分大小写的问题.通常,表和列不区分大小写,但如果使用引号,则它们将是区分大小写的.例如:
create table bad_design("goodLuckSelectingThisColumn" number);
Run Code Online (Sandbox Code Playgroud)
当我意外地使用相同的持久性数据库表定义了两个实体时,这发生在我身上.在其中一个表中,有问题的列确实存在,而另一个表中则没有.尝试持久化对象(指向错误的基础数据库表的类型)时,发生此错误.
小智 5
在双引号之间写入列名,如“columnName”。
如果错误消息显示的字符大小写与您所写的不同,则很可能是您的 sql 客户端为您执行了自动大小写转换。使用双引号绕过它。(这适用于 Squirrell Client 3.0)。
| 归档时间: |
|
| 查看次数: |
141852 次 |
| 最近记录: |