关于存储过程通过DBLINK 访问只读数据库报错 PL/SQL: ORA-04063:的说明

简介: 报错如下: ORA-06550: line 11, column 31: PL/SQL: ORA-04063: table "ACCOUNTCORE.ACCOUNT_LEDGER" has errors ORA-06550: line 10, column...
报错如下:
ORA-06550: line 11, column 31:
PL/SQL: ORA-04063: table "ACCOUNTCORE.ACCOUNT_LEDGER" has errors
ORA-06550: line 10, column 23:
PL/SQL: SQL Statement ignored

关于这一点MOS有相关说明:

CAUSE

This is expected behavior.

Compiling the PL/SQL block we require internal structures of the table, which is not yet generated in the read only database.

This has been identified in:
Bug 2798026 ORA-6550 / PLS-905 WHEN RUNNING PL/SQL OVER DBLINK TO READ ONLY STANDBY DATABASE

SOLUTION

Workaround:

1. Populate internal structures by running PL/SQL before making remote Database READ ONLY

or

2. Or create a view in local database against the remote TABLE as:

Create view x_view as select count(*) y from x@ora102;

declare
    i number;
    begin
    select count(*) into i from x_view;
end;
/

记录于此
相关文章
|
8天前
|
SQL 人工智能 算法
【SQL server】玩转SQL server数据库:第二章 关系数据库
【SQL server】玩转SQL server数据库:第二章 关系数据库
51 10
|
25天前
|
SQL 存储 BI
【软件设计师备考 专题 】数据库语言(SQL)
【软件设计师备考 专题 】数据库语言(SQL)
89 0
|
25天前
|
SQL Perl
PL/SQL经典练习
PL/SQL经典练习
13 0
|
25天前
|
SQL Perl
PL/SQL编程基本概念
PL/SQL编程基本概念
13 0
|
30天前
|
SQL Perl
PL/SQL Developer 注册机+汉化包+用户指南
PL/SQL Developer 注册机+汉化包+用户指南
16 0
|
17天前
|
存储 NoSQL Java
Java数据库编程指南:实现高效数据存储与访问
【4月更文挑战第2天】Java开发者必须掌握数据库编程,尤其是JDBC,它是连接数据库的标准接口。使用Spring JDBC或JPA能简化操作。选择合适的JDBC驱动,如MySQL Connector/J,对性能至关重要。最佳实践包括事务管理、防SQL注入、优化索引和数据库设计。NoSQL数据库如MongoDB也日益重要,Java有对应的驱动支持。理解这些概念和技术是构建高效数据库应用的基础。
Java数据库编程指南:实现高效数据存储与访问
|
29天前
|
SQL 数据库
sql server中创建数据库和表的语法
sql server中创建数据库和表的语法
18 1
|
28天前
|
存储 SQL 数据库
sql serve存储过程
sql serve存储过程
14 0
|
8天前
|
SQL 算法 数据库
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
【SQL server】玩转SQL server数据库:第三章 关系数据库标准语言SQL(二)数据查询
66 6
|
3天前
|
SQL 缓存 Java
Java数据库连接池:优化数据库访问性能
【4月更文挑战第16天】本文探讨了Java数据库连接池的重要性和优势,它能减少延迟、提高效率并增强系统的可伸缩性和稳定性。通过选择如Apache DBCP、C3P0或HikariCP等连接池技术,并进行正确配置和集成,开发者可以优化数据库访问性能。此外,批处理、缓存、索引优化和SQL调整也是提升性能的有效手段。掌握数据库连接池的使用是优化Java企业级应用的关键。