JDBC ORA-00955:名称已经被一个现有对象使用[关闭]。

问题描述 投票:0回答:1

我通过JDBC创建了一个动态临时表,但它失败了,并出现了以下错误

通过JDBC查询。 create table abcd_tmp as select * form abcd where 1=2;

 Error: ORA-00955: name is already used by an existing object

我检查了这个论坛上所有与这个错误有关的其他帖子,但没有用。在我的案例中,没有这样的同名表退出。(上例中的abcd_tmp)

我已经再三确认没有这个表。 另外,即使我把名字从 abcd_tmpabcd_something 但还是不行。 我很确定这个错误是由于其他原因造成的,有什么想法吗?

java oracle jdbc
1个回答
1
投票

这个错误并没有说 桌子 名的存在,但 对象. 对象 可以是任何东西--(一个表),一个过程函数触发包包序列同义词视图...。

你应该查询 ALL_OBJECTSUSER_OBJECTS 来验证你真正拥有的东西,比如。

SQL> select owner, object_type from all_objects where upper(object_name) = 'EMP';

OWNER                          OBJECT_TYPE
------------------------------ -------------------
SCOTT                          TABLE

SQL>

然后你就会知道你到底有什么。


0
投票

我想明白了问题所在。 这个问题是由于代码中的一个逻辑错误。由于我忽略了日志文件,我没有意识到我试图一次又一次地创建相同的表。结束这个问题。 谢谢大家的及时帮助和建议。

© www.soinside.com 2019 - 2024. All rights reserved.