IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PL/SQL Oracle Discussion :

Exec Stored Procedure avec un DBlink.


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant Décisionnel
    Inscrit en
    Janvier 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant Décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 128
    Par défaut Exec Stored Procedure avec un DBlink.
    Bonjour,

    Je n'arrive pas à exécuter une procédure avec un DB Link,
    J'ai essayé plein d'écriture différentes.. Mais aucune ne marche.

    Pour l'instant j'en suis là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    EXEC BO_RCTA1_V2@LUC();
    Il me dit sql invalide.

    Une idée?

  2. #2
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    J'ai un peu de mal à voir où ça coince car tu donnes peu d'infos.

    Ta procédure se trouve sur la base de données distante et elle est accessible via un DBLink ou bien ta procédure est dans ta base locale et elle utilise, dans son code, un DBLink?

    De ce que je lis je pense que LUC est ton DBLink. Est-il valide? Exécute le code suivant pour voir si le DBLink est OK (attention : même si son statut dans DBA_OBJECT est VALID, ça ne veut pas dire qu'il ait été correctement créé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select 1 from dual@LUC;
    Si c'est OK, enlève les () car ta procédure n'a pas de paramètre; c'est peut-être lié à ça.

    Au fait, lors de la compilation de ta procédure sur la base distante, il n'y a pas eu de message d'erreur? Vérifie que ta procédure peut correctement s'exécuter sur la base distante en te connectant directement sur celle-ci si c'est possible.

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant Décisionnel
    Inscrit en
    Janvier 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant Décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 128
    Par défaut
    Alors oui,
    mon DB link fonctionne correctement et il n'y a pas d'erreur sur le script,

    je viens d'essayer sans le () mais toujours pareil..

    Je suis passé avec un package finalement et ça marche..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    BEGIN
    PKG_Test.PS_RDV1@LUC();
    END;
    Mais je ne comprend pas pourquoi la procédure non..?

  4. #4
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    Si ça marche, c'est le principal

    Mais je note que le nom de la procédure n'est pas le même entre les deux messages, c'est normal?
    Message 1 : BO_RCTA1_V2
    Message 2 : PS_RDV1

    En outre dans le message 1 je vois un EXEC et dans le message 2 un BEGIN END --> au début tu voulais exécuter ta procédure directement sous SQL*Plus et dans le deuxième cas tu as appelé celle-ci via un bloc PL/SQL?

    J'ai l'impression qu'il y a entre le test 1 KO et le test 2 OK beaucoup de paramètres qui ont changé.

  5. #5
    Membre confirmé
    Homme Profil pro
    Consultant Décisionnel
    Inscrit en
    Janvier 2012
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant Décisionnel
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2012
    Messages : 128
    Par défaut
    Ah mais EXEC n'est pas une commande PL/SQL d'Oracle?? ^^

    Sinon oui c'est normal, c'est la même procédure.

  6. #6
    Membre Expert
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    2 005
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2 005
    Par défaut
    Oui, tu as raison, EXEC est pour le PL/SQL :-(
    J'en fais pas assez, surtout avec des appels de fonctions.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur de troubleshooting sur stored procedure avec une transaction
    Par shimomura22 dans le forum Développement
    Réponses: 2
    Dernier message: 22/06/2016, 19h13
  2. [AC-2010] EXEC Stored procedure
    Par Haikel22 dans le forum VBA Access
    Réponses: 0
    Dernier message: 08/03/2016, 16h02
  3. [2012] Stored Procedure avec sp_executesql
    Par Aroeris dans le forum Développement
    Réponses: 5
    Dernier message: 24/02/2014, 10h20
  4. Réponses: 5
    Dernier message: 09/07/2012, 09h06
  5. Réponses: 5
    Dernier message: 11/07/2006, 15h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo