Bonjour à tous!
Serait-il possible d'appeller une procédure ou une fonction stockée dans une base oracle 9i à partir de pro*c?
Si oui, pouriez vous me donnée un exemple à titre de démonstration?
merci
Bonjour à tous!
Serait-il possible d'appeller une procédure ou une fonction stockée dans une base oracle 9i à partir de pro*c?
Si oui, pouriez vous me donnée un exemple à titre de démonstration?
merci
Bonjour
Exemple basique sans aucun contrôle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 char sql[] = "BEGIN ma_procedure(:param1, :param2); END;"; EXEC SQL PREPARE SP FROM :sql; EXEC SQL EXECUTE SP USING :var1, :var2;
Nul besoin du SQL dynamique
Il faut faire attention aux paramètres pour passer/récupérer les variable Pro*C
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 EXEC SQL EXECUTE BEGIN Mon_block_PL/SQL EXCEPTION Ma_gestion_des_exceptions_PL/SQL END; END-EXEC;
(host variables)
Effectivement, nul besoin du SQL dynamique pour du pl/sql statique et effectivement ma réponse était incomplète.
Par contre, si le nom de ta procédure ou le contenu du block pl/sql n'est pas connu à l'avance, tu en as besoin.
Je suis donc plus nuancé que mnitu, je dirais donc tu as deux méthodes en fonction des besoins
ok! merçi pour vos réponses, je vais voir ça
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager