【发布时间】:2015-08-10 14:57:21
【问题描述】:
在我的 Oracle DB 设置中,所有表都是在专用用户帐户 SYS0MYUSER 下创建的。在我的系统上执行以下查询时,我得到了SQL Error: ORA-00903: invalid table name
SELECT COUNT(*) FROM SYS0MYUSER.USER;
我试图像这样转义保留关键字:
SELECT COUNT(*) FROM "SYS0MYUSER.USER";
然后我又遇到了一个错误SQL Error: ORA-00942: table or view does not exist
用户名+保留关键字组合的正确转义方式是什么?
更新: 表别名是怎么回事,我也必须使用双引号吗?
【问题讨论】:
-
找出实际的架构名称。
SYS0MYUSER是实际的架构名称吗? -
@Rahul OP 提到用户是
SYS0MYUSER。在 Oracle 中,用户名和模式名是同义词。 -
@tommyk - 表名是
USER? -
@LalitKumarB 是的,表名是 USER。
-
@tommyk 查看我的答案,已更新以回答您关于表别名的问题。
标签: sql oracle reserved-words quoted-identifier