Comment appeler une fonction sql ABC définie dans le package de DEF à l'aide de CRAPAUD ORACLE

J'ai Package Oracle nommé DEF , avec 1 fonction à l'intérieur d'nommée ABC qui acceptent 1 argument de type chaîne.
Je sais comment appeler cette fonction ABC directement dans le CRAPAUD de l'Éditeur?

Merci d'avance.

CREATE OR REPLACE PACKAGE HPQ_IF.def AS
  FUNCTION def(p_sql IN VARCHAR2)
  RETURN VARCHAR2;
END def;
/


  FUNCTION abc(p_sql IN VARCHAR2)
  RETURN VARCHAR2
  IS
  j NUMBER;

  BEGIN
    dbms_output.put_line(p_sql);
    RETURN 'Done';
  END abc;

Dernière erreur (en utilisant d'abord la réponse ci-dessous):

[Error] Execution (6: 31): ORA-06550: line 6, column 31:
PLS-00302: component 'abc' must be declared
ORA-06550: line 6, column 3:
PL/SQL: Statement ignored
  • Il semble que vous avez changé la fonction et les noms de paquets. Mais je soupçonne que vous avez fait une erreur. La fonction doit être appelée abc, et pas seulement dans le corps mais dans la déclaration. Veuillez poster le package complet d'en-tête et l'ensemble du corps. Si vous modifiez le nom, puis la première à corriger toutes les erreurs afin de l'en-tête et le corps compiler avec succès.
InformationsquelleAutor iwan | 2011-11-13