PLS-00323 Fehler in oracle
Ich bin erstellen Sie eine Prozedur in einem Paket. Ich habe aktualisiert die Spezifikation des Pakets und dann, wenn ich die Aktualisierung der Körper des Pakets zeigt es mir die folgende Fehlermeldung.
[Fehler] PLS-00323 (314: 13): PLS-00323: Unterprogramm oder den cursor 'INSERT_CUSTOMER_ADDRESS' deklariert ist in einer package-Spezifikation und definiert werden muss, die in dem Paket Körper
N. B.: INSERT_CUSTOMER_ADDRESS ist mein name der Prozedur.
- Vielleicht zu offensichtlich, aber prüfen, ob der name der Prozedur ist genau die gleiche, wie auch all die Parameter, die er erhält.
- Habe es, nur einen Buchstaben vermisst einen parameter name.
- gleiche Fehler hier etwa eine halbe Stunde Umgang mit diesem. vielen Dank.
- Vergessen Sie nicht zu überprüfen, zurück zu geben. Das ist was mich.
- Bitte wählen Sie eine Lösung, die von unten und markieren Sie als Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie eine Prozedur erstellen, in der package-Spezifikation erstellt werden muss\implementiert im Paket Körper. Betrachten Sie Ihre package-Spezifikation als Schnittstelle und das Paket Körpers zu seiner Umsetzung.
Immer die Deklaration auf der spec pkg und pkg Körper sollten identisch sein.
Was bedeutet, dass die Prozedur /Funktion deklariert pkg spec ( beinhaltet name der Prozedur /Funktion , Parameter type ) sollte genau gleich.
Hinweis : wenn oracle stellt die pkg für die oben genannten Fehler Fall, es wird nicht geben Ihnen die genaue Zeile nicht.
Spezifikation : FUNKTION ITEM_ACTIVE(SKU_NUM IN NUMBER) RETURN BOOLEAN;
Körper : FUNKTION ITEM_ACTIVE(P_SKU_NUM IN NUMBER) RETURN BOOLEAN;
Ändern Spezifikation oder Körper exakt.
HTH!
Weil jemand die alten Fehler sind immer news zu mir, ich werde meine 3 Cent:
Jemand gelöscht Ihre Skillung, hatte aber immer noch den Körper (Nein, ich weiß nicht, wie) und Sie "nicht wollen, geben Sie alle wieder in".
So zeigte ich Ihnen, wie zu generieren der Skillung aus dem Körper:
Nur Magie ist nicht passiert-und alles ging rot... mit PLS-00323 Fehler.
SQL Developer füllt das Paket spec durch ziehen der Prozedur-und Funktions-Header vom code selbst, so sollten Sie nicht haben, um sorgen über Dinge liek pselling. Es enthält eine Liste von Objekten hinzufügen, um das Paket/spec, und Sie wählen, welche zu fügen.
Wir haben die richtigen Verfahren und Funktionen, aber es kompiliert mit Fehler. Wieder. Und, wieder.
Es stellt sich heraus, dass die Funktionen, warf Fehler waren im Paket definierten Körper mit DETERMINISTISCHEN -- bei SQL-Dev ' s editor hat die Synchronisierung linke, das Wort. Das ist ziemlich bedeutsam.
Sowieso, überprüft, eingefügt DETERMINISTISCH, in der bestimmte Funktionen vor dem Semikolon gespeichert (kompiliert), und dann war es Magie wieder.
Würden Sie erwarten, SQL Developer, um die volle Arbeit, statt eine halbe... job.