无效对象及其在应用程序中会导致什么问题?
Invalid Objects and What issue they can cause in application?
我只是想了解一些来自 Oracle ebs 12.1.3 的无效对象。该列表是
- CST_LAYER_ACTUAL_COST_DTLS_V
- IGW_BUDGET_CATEGORY_V
- IGW_REPORT_PROCESSING
- FV_FACTS_TBAL_TRX
- FV_FACTS_TRX_REGISTER
- FV_SF133_ONEYEAR
- FV_SF133_NOYEAR
- FV_FACTS_TRANSACTIONS
- FV_FACTS_TBAL_TRANSACTIONS
- ENI_DBI_CO_OBJIDS_MV
- PJI_TIME_PA_RPT_STR_MV
- POA_MID_BS_J_MV
- POA_IDL_BS_J_MV
- POA_ITEMS_MV
- GL_ACCESS_SET_LEDGERS
- LNS_LOAN_DTLS_ALL_MV
- OZF_CUST_FUND_SUMMARY_MV
- FV_SLA_FV_PROCESSING_PKG
- OE_ITEMS_MV
- PA_DEDUCTIONS_W
- PA_DEDUCTIONS_PUB
- PA_DEDUCTIONS_PUB
- PA_DEDUCTIONS_W
- PA_DCTN_APRV_NOTIFICATION
--对象类型--
CST_LAYER_ACTUAL_COST_DTLS_V VIEW
IGW_BUDGET_CATEGORY_V VIEW
IGW_REPORT_PROCESSING
PACKAGE BODY FV_FACTS_TBAL_TRX PACKAGE BODY
FV_FACTS_TRX_REGISTER PACKAGE BODY
FV_SF133_ONEYEAR PACKAGE BODY
FV_SF133_NOYEAR PACKAGE BODY
FV_FACTS_TRANSACTIONS
PACKAGE BODY FV_FACTS_TBAL_TRANSACTIONS PACKAGE BODY
ENI_DBI_CO_OBJIDS_MV MATERIALIZED VIEW
PJI_TIME_PA_RPT_STR_MV MATERIALIZED VIEW
POA_MID_BS_J_MV MATERIALIZED VIEW
POA_IDL_BS_J_MV MATERIALIZED VIEW
POA_ITEMS_MV MATERIALIZED VIEW
GL_ACCESS_SET_LEDGERS MATERIALIZED VIEW
LNS_LOAN_DTLS_ALL_MV MATERIALIZED VIEW
OZF_CUST_FUND_SUMMARY_MV MATERIALIZED VIEW
FV_SLA_FV_PROCESSING_PKG PACKAGE BODY
NIB_MV_TB MATERIALIZED VIEW
OE_ITEMS_MV MATERIALIZED VIEW
PA_DEDUCTIONS_W PACKAGE
PA_DEDUCTIONS_PUB PACKAGE
PA_DEDUCTIONS_PUB PACKAGE BODY
PA_DEDUCTIONS_W PACKAGE BODY
PA_DCTN_APRV_NOTIFICATION PACKAGE BODY
所以我想知道如果我让它们无效,它们会导致什么问题?
我了解自己的步骤:-
我已经通过对象名称搜索了 Oracle 支持和 google,但我得到的唯一结果是没有补丁可以解决问题,或者在某些情况下忽略这些对象它们将无能为力。
如果有人知道有关这些对象的信息以及它们可能在应用程序中引起什么问题。请分享。
提前致谢!!!
Tom Kyte,著名的 Oracle 专家,says
They will fix themselves as they are executed or accessed. I never
worry about some invalid objects -- you'll almost always have some
somewhere.
这通常是正确的,只要:
- 数据库安装正确
- 补丁和升级已正确安装
- 您没有更改 oracle 前端代码或 oracle 数据库代码
- 正在输入的数据仍在预期范围内
无效的实体化视图通常并不重要。在 9、10 和 11 中,一旦将新数据添加到基础表中,它们就会变得无效。即使无效也可以使用
访问时会编译无效视图,如果没有错误,则可以使用。
包和包主体也是如此:如果没有错误,它们会在访问时编译。您的前端如何在编译之前处理错误消息对于所有应用程序都是不一样的。如果您尝试访问由于代码错误而无法编译的包,那么您将不会得到任何结果,并且会返回 PL/SQL 错误。
查看问题的原因:
- 手动编译所有无效对象或使用 dbms_utility.compile_schema( 'YourSchema' );
对于无法编译的任何内容,您可以通过查询找到更多信息
select * 来自 all_errors:
如果您在 Oracle 提供的对象中发现错误,则必须确定来源:
- 安装或修补不正确
- 应该修补的已知 Oracle 错误
- 可以忽略的已知 Oracle 错误
- 其他不在问题范围内的原因
我只是想了解一些来自 Oracle ebs 12.1.3 的无效对象。该列表是
- CST_LAYER_ACTUAL_COST_DTLS_V
- IGW_BUDGET_CATEGORY_V
- IGW_REPORT_PROCESSING
- FV_FACTS_TBAL_TRX
- FV_FACTS_TRX_REGISTER
- FV_SF133_ONEYEAR
- FV_SF133_NOYEAR
- FV_FACTS_TRANSACTIONS
- FV_FACTS_TBAL_TRANSACTIONS
- ENI_DBI_CO_OBJIDS_MV
- PJI_TIME_PA_RPT_STR_MV
- POA_MID_BS_J_MV
- POA_IDL_BS_J_MV
- POA_ITEMS_MV
- GL_ACCESS_SET_LEDGERS
- LNS_LOAN_DTLS_ALL_MV
- OZF_CUST_FUND_SUMMARY_MV
- FV_SLA_FV_PROCESSING_PKG
- OE_ITEMS_MV
- PA_DEDUCTIONS_W
- PA_DEDUCTIONS_PUB
- PA_DEDUCTIONS_PUB
- PA_DEDUCTIONS_W
- PA_DCTN_APRV_NOTIFICATION
--对象类型--
CST_LAYER_ACTUAL_COST_DTLS_V VIEW
IGW_BUDGET_CATEGORY_V VIEW
IGW_REPORT_PROCESSING
PACKAGE BODY FV_FACTS_TBAL_TRX PACKAGE BODY
FV_FACTS_TRX_REGISTER PACKAGE BODY
FV_SF133_ONEYEAR PACKAGE BODY
FV_SF133_NOYEAR PACKAGE BODY
FV_FACTS_TRANSACTIONS
PACKAGE BODY FV_FACTS_TBAL_TRANSACTIONS PACKAGE BODY
ENI_DBI_CO_OBJIDS_MV MATERIALIZED VIEW
PJI_TIME_PA_RPT_STR_MV MATERIALIZED VIEW
POA_MID_BS_J_MV MATERIALIZED VIEW
POA_IDL_BS_J_MV MATERIALIZED VIEW
POA_ITEMS_MV MATERIALIZED VIEW
GL_ACCESS_SET_LEDGERS MATERIALIZED VIEW
LNS_LOAN_DTLS_ALL_MV MATERIALIZED VIEW
OZF_CUST_FUND_SUMMARY_MV MATERIALIZED VIEW
FV_SLA_FV_PROCESSING_PKG PACKAGE BODY
NIB_MV_TB MATERIALIZED VIEW
OE_ITEMS_MV MATERIALIZED VIEW
PA_DEDUCTIONS_W PACKAGE
PA_DEDUCTIONS_PUB PACKAGE
PA_DEDUCTIONS_PUB PACKAGE BODY
PA_DEDUCTIONS_W PACKAGE BODY
PA_DCTN_APRV_NOTIFICATION PACKAGE BODY
所以我想知道如果我让它们无效,它们会导致什么问题?
我了解自己的步骤:-
我已经通过对象名称搜索了 Oracle 支持和 google,但我得到的唯一结果是没有补丁可以解决问题,或者在某些情况下忽略这些对象它们将无能为力。
如果有人知道有关这些对象的信息以及它们可能在应用程序中引起什么问题。请分享。
提前致谢!!!
Tom Kyte,著名的 Oracle 专家,says
They will fix themselves as they are executed or accessed. I never worry about some invalid objects -- you'll almost always have some somewhere.
这通常是正确的,只要:
- 数据库安装正确
- 补丁和升级已正确安装
- 您没有更改 oracle 前端代码或 oracle 数据库代码
- 正在输入的数据仍在预期范围内
无效的实体化视图通常并不重要。在 9、10 和 11 中,一旦将新数据添加到基础表中,它们就会变得无效。即使无效也可以使用
访问时会编译无效视图,如果没有错误,则可以使用。
包和包主体也是如此:如果没有错误,它们会在访问时编译。您的前端如何在编译之前处理错误消息对于所有应用程序都是不一样的。如果您尝试访问由于代码错误而无法编译的包,那么您将不会得到任何结果,并且会返回 PL/SQL 错误。
查看问题的原因:
- 手动编译所有无效对象或使用 dbms_utility.compile_schema( 'YourSchema' );
对于无法编译的任何内容,您可以通过查询找到更多信息
select * 来自 all_errors:
如果您在 Oracle 提供的对象中发现错误,则必须确定来源:
- 安装或修补不正确
- 应该修补的已知 Oracle 错误
- 可以忽略的已知 Oracle 错误
- 其他不在问题范围内的原因