Vì vậy, tôi đã chạy một thủ tục PLSQL tốt và không biên dịch. Tôi đã thực hiện một thay đổi đối với quy trình của mình và nó vẫn biên dịch tốt, nhưng bây giờ khi tôi chạy nó, tôi nhận được lỗi này:Hiện trạng các gói đã bị hủy bỏ
ERROR at line 1:
ORA-04068: existing state of packages has been discarded
ORA-04061: existing state of package body "SCHEMA.XP_COVER_PAGEP" has been invalidated
ORA-04065: not executed, altered or dropped package body "SCHEMA.XP_COVER_PAGEP"
ORA-06508: PL/SQL: could not find program unit being called: "SCHEMA.XP_COVER_PAGEP"
ORA-06512: at "SCHEMA.XP_ST_002180", line 141
ORA-06512: at line 1
Bất kỳ ý tưởng nào có thể là gì? Sự thay đổi tôi tạo ra không đáng kể đến mức tôi nghi ngờ nó có thể đã gây ra lỗi này. Cảm ơn rất nhiều về sự trợ giúp của bạn!
Cảm ơn darreljnz, giải pháp đã làm việc tốt cho tôi. Nhưng lúc đầu tôi không hiểu bạn đang nói gì. Vì vậy, tôi sẽ chỉ làm rõ giải pháp của bạn một chút cho người khác. Mở một cửa sổ thử nghiệm mới trong pl/sql và dán "Begin sys.dbms_session.reset_package; end;" và nhấn F9 để thực hiện nó và sau đó thực hiện thay đổi cho gói của bạn hoặc biên dịch lại gói và bây giờ chúng tôi sẽ không nhận được bất kỳ lỗi nào trong các ứng dụng của chúng tôi –
Bắt đầu tốt nhất câu trả lời cho vấn đề này. Nó sẽ là tốt để xem điều này mang thêm một chút để giải thích vấn đề cốt lõi và tại sao lỗi xảy ra. –
@YogeshJindal có vẻ như bạn đang nói điều gì đó khác với darrelinjz. Anh ấy viết rằng bạn cần chạy RESET_PACKAGE, trên mỗi phiên, sau khi thay đổi gói để tránh lỗi. – pauloya