为了账号安全,请及时绑定邮箱和手机立即绑定

必须声明标识符“DBMS_SODA_ADMIN.DESCRIBE_COLLECTION”

必须声明标识符“DBMS_SODA_ADMIN.DESCRIBE_COLLECTION”

动漫人物 2023-05-24 15:44:21
执行代码后出现异常。oracle.soda.rdbms.impl.SODAUtils$1OracleSQLException 在 oracle.soda.rdbms.impl.SODAUtils.makeExceptionWithSQLText(SODAUtils.java:112) 在 oracle.soda.rdbms.impl.SODAUtils.makeExceptionWithSQLText(SODAUtils.java:75) 在oracle.soda.rdbms.impl.OracleDatabaseImpl.loadCollection(OracleDatabaseImpl.java:1338)在 oracle.soda.rdbms.impl.OracleDatabaseImpl.openCollection(OracleDatabaseImpl.java:410)在 oracle.soda.rdbms.impl.OracleDatabaseImpl.createCollection( OracleDatabaseImpl.java:348) 在 oracle.soda.rdbms.impl.OracleDatabaseImpl.createCollection(OracleDatabaseImpl.java:332) 在 oracle.soda.rdbms.impl.OracleDatabaseImpl.createCollection(OracleDatabaseImpl.java:321) 在 oracle.soda.rdbms .impl.OracleDatabaseImpl.access$100(OracleDatabaseImpl.java:62) 在 oracle.soda.rdbms.impl。OracleDatabaseImpl$OracleDatabaseAdministrationImpl.createCollection(OracleDatabaseImpl.java:1798) 在 com.cisco.salesconnect.lms.TestSoda.main(TestSoda.java:26) 引起:java.sql.SQLException:ORA-06550:第 2 行,第 3 列: PLS-00201:必须声明标识符“DBMS_SODA_ADMIN.DESCRIBE_COLLECTION” ORA-06550:第 2 行,第 3 列:PL/SQL:在 oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445) 处忽略的语句.driver.T4CTTIoer.processError(T4CTTIoer.java:396) 在 oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879) 在 oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450) 在 oracle。 jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192) 在 oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) 在 oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:204) 在 oracle.jdbc.driver.T4CCallableStatement.executeForRows(T4CCallableStatement.java:1041) 在 oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1329) 在 oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement .java:3584) 在 
查看完整描述

2 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

您是否向创建集合的用户授予了 SODA_APP 角色?例如:

将 SODA_APP 授予 userNameHere;

如果你不这样做,你得到的错误就会发生。


查看完整回答
反对 回复 2023-05-24
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

在调用db.admin().createCollection("MyFirstJSONCollection");引用时执行的代码中的某处正在调用DBMS_SODA_ADMIN.DESCRIBE_COLLECTION数据库中不存在的对象。您应该检查并查看架构是否DBMS_SODA_ADMIN存在,以及该架构中是否有一个对象被调用DESCRIBE_COLLECTION。一种方法是执行查询,例如


SELECT *

  FROM DBA_USERS u

  WHERE u.USERNAME = 'DBMS_SODA_ADMIN'


SELECT *

  FROM DBA_OBJECTS o

  WHERE o.OWNER = 'DBMS_SODA_ADMIN' AND

        o.OBJECT_NAME = 'DESCRIBE_COLLECTION'

如果缺少任何一个,则表明 Soda 数据库组件的安装未执行或未成功完成。如果这些东西确实存在,则表明您的代码所连接的用户没有访问此对象所需的权限。


查看完整回答
反对 回复 2023-05-24
  • 2 回答
  • 0 关注
  • 143 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信