Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Connexions aux bases de données
Connexions aux bases de données Forum d'entraide sur les problèmes de connectivité Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/10/2007, 12h24   #1
Invité de passage
 
Inscription : octobre 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3
Points : 0
Points : 0
Par défaut probleme de connexion à une autre base

Je ne parviens pas à me connecter à une autre base "base2" à partir d'un package hébergé sur une autre base "base1" via cette instruction :
"Connect pegsuivi/pegsuivi@base2;"
La syntaxe est correcte à priori car lorsqu’elle est excecutée en ligne de commande oracle, ça passe.
Merci
ismael2108 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 14h22   #2
Membre du Club
 
Inscription : août 2005
Messages : 68
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 68
Points : 68
Points : 68
Bonjour et bienvenu sur ce forum,
As-tu lu ceci ?

Est-ce que tu penses qu'on peut t'aider sans connaitre le message d'erreur ?

xavi.
xavi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 16h22   #3
Invité de passage
 
Inscription : octobre 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3
Points : 0
Points : 0
Par défaut plus de détails

je suis sur oracle 8.8

Voilà ce que j'ai codé dans mon package :

ELSIF a_s_base = 'peg_prod' THEN
s_base_connect := 'EDTP';
END IF;
--
-- Connection à la base de l'éditique
Connect pegsuivi/pegsuivi@EDTE;
--
-- Appel de la fonction gethistodemande
Execute pck_editique.gethistodemandes(tab_in,'LMP001', tab_out);

-- Réception des états/statuts de l'éditique et alimentation de la table de sortie
k := tab_out.FIRST ;
WHILE k IS NOT NULL
LOOP
-- Alimentation du tableau de sortie
tab_out(k).is_courrier := tab_out(k).is_courrier;

J'ai ce message d'erreur quand je compile :

Ligne : 4353
Texte : Connect pegsuivi/pegsuivi@EDTE;

Erreur : PLS-00103: Encountered the symbol ";" when expecting one of the following:

. ( * @ & = - + < / > at in is mod not rem when
<an exponent (**)> <> or != or ~= >= <= <> and or like
between ||
ismael2108 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 16h55   #4
Membre du Club
 
Inscription : août 2005
Messages : 68
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 68
Points : 68
Points : 68
CONNECT n'existe pas en PL/SQL.
C'est une commande sql*plus qui ne peut pas être appellée au milieu d'un bloc.

Regarde du côté des db-link si tu as besoin d'intervenir sur une autre base au milieu d'un bloc. Sinon, faire le connect entre deux blocs.
xavi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2007, 17h23   #5
Invité de passage
 
Inscription : octobre 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 3
Points : 0
Points : 0
Par défaut execution d'un package

Rebonjour,

On a créé des db_link sur chacune des bases. Le probleme de connexion ne se pose plus.
Le but de cette connexion est d'executer un package dans la 2eme base.
Or, quand j'esaie de compiler mon package, j'ai le meme message d'erreur

Erreurs de compilation dans PACKAGE BODY IOUHATTA.PCK_EDITIQUE_COMMUN

Erreur : PLS-00103: Encountered the symbol "PCK_EDITIQUE" when expecting one of the following:

:= . ( @ % ; immediate
The symbol ":=" was substituted for "PCK_EDITIQUE" to continue.
Ligne : 4356
Texte : Execute pck_editique.gethistodemandes(tab_in,'LMP001', tab_out);


Dans mon packahge, l'xécution est codé comme suit :


-- Appel de la fonction gethistodemande dans la base cible
Execute pck_editique.gethistodemandes(tab_in,'LMP001', tab_out);

-- Réception des états/statuts de l'éditique et alimentation de la table de sortie
k := tab_out.FIRST ;
WHILE k IS NOT NULL
LOOP
-- Alimentation du tableau de sortie
tab_out(k).is_courrier := tab_out(

D'avance merci
ismael2108 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h40.


 
 
 
 
Partenaires

Hébergement Web