使用 OLEDB 在 excel 2010 上使用 MSDAORA 在 SQL 递归级别出错
error at SQL recursive level using MSDAORA on excel 2010 using OLEDB
我在 excel 2010 年使用 MSDAORA(Microsoft OLE DB Provider for Oracle)从 Oracle 数据库检索视图,直到昨天工作正常,开始向它抛出错误消息 ora-00604 错误发生在递归sql级别
我不知道去哪里检查。
- 我与 BD 的连接是通过 VPN 进行的。
- 不包括 excel,与数据库的连接正常,与数据库一起工作的系统正常。
Screen of the error
可能有很多原因。
1- Table 或视图,或大部分触发器已不存在。确保您的视图仍然存在。递归 SQL 错误的一个可能原因也是一个触发器。
为确保这不是与触发器相关的错误,您可以尝试执行以下行:
Alter system set “_system_trig_enabled”=FALSE;
SELECT * FROM dba_triggers
WHERE trigger_type not in (‘before each row’,’after each row’)
2- 另一个常见的例子是尝试 运行 一个 table 或新创建的视图。这里需要使用SYS重新编译DBMS_CDC_PUBLISH包,直到查看不到无效包为止。
如果两者都不起作用,您应该检查拼写并逐行调试您的代码。如果没有任何效果,请尝试联系您的数据库管理员。祝你好运。
参考:https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::p11_question_id:4018285967344
参考文献 2:https://www.tekstream.com/oracle-error-messages/ora-00604-error-at-recursive-sql-level-1/
我在 excel 2010 年使用 MSDAORA(Microsoft OLE DB Provider for Oracle)从 Oracle 数据库检索视图,直到昨天工作正常,开始向它抛出错误消息 ora-00604 错误发生在递归sql级别
我不知道去哪里检查。 - 我与 BD 的连接是通过 VPN 进行的。 - 不包括 excel,与数据库的连接正常,与数据库一起工作的系统正常。
Screen of the error
可能有很多原因。
1- Table 或视图,或大部分触发器已不存在。确保您的视图仍然存在。递归 SQL 错误的一个可能原因也是一个触发器。
为确保这不是与触发器相关的错误,您可以尝试执行以下行:
Alter system set “_system_trig_enabled”=FALSE;
SELECT * FROM dba_triggers
WHERE trigger_type not in (‘before each row’,’after each row’)
2- 另一个常见的例子是尝试 运行 一个 table 或新创建的视图。这里需要使用SYS重新编译DBMS_CDC_PUBLISH包,直到查看不到无效包为止。
如果两者都不起作用,您应该检查拼写并逐行调试您的代码。如果没有任何效果,请尝试联系您的数据库管理员。祝你好运。
参考:https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::p11_question_id:4018285967344
参考文献 2:https://www.tekstream.com/oracle-error-messages/ora-00604-error-at-recursive-sql-level-1/