Oracle
 sql >> Datenbank >  >> RDS >> Oracle

OracleCommandBuilder.DeriveParameters() löst OracleException aus:ORA-06564:Objekt existiert nicht ORA-06512:bei SYS.DBMS_UTILITY

Von meinem Oracle-ish Sichtweise war dies Ihr großer Fehler:

CREATE OR REPLACE PROCEDURE "CustOrdersOrders"
                            -                -
                            these double quotes

Denn standardmäßig speichert Oracle alle Objektnamen in Großbuchstaben im Wörterbuch, aber Sie können darauf beliebig verweisen, z. custordersorders , CUSTordERsordERS , CUSTORDERSORDERS , custordersorders - Kein Problem. Wenn Sie jedoch einen beliebigen Namen (Prozedur, Tabelle, Spalte, ...) in doppelte Anführungszeichen setzen, müssen Sie dies müssen Verwenden Sie jedes Mal doppelte Anführungszeichen, wenn Sie auf dieses Objekt verweisen, eingeschlossen in dieselben doppelten Anführungszeichen und übereinstimmende Groß- und Kleinschreibung, genau wie Sie sie beim Erstellen dieses Objekts verwendet haben.

Also:Erstellen Sie die Prozedur entweder neu als CREATE OR REPLACE PROCEDURE CustOrdersOrders (was ich vorschlagen würde) oder doppelte Anführungszeichen verwenden.