Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
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 26/09/2011, 13h45   #1
Futur Membre du Club
 
Inscription : septembre 2011
Messages : 51
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 51
Points : 15
Points : 15
Par défaut Procédure avec variable à la place du nom des tables

Bonjour,

J'aurais besoin d'un coup de main en PL/SQL.

Je souhaiterai faire une procédure qui prend en paramètre 2 tables et qui fasse une insertion des valeurs d'une table dans la deuxième.

J'arrive à faire des procédures avec des variables mais dès que je mets une variable à la place du nom de la table, il ne compile plus...

Auriez-vous une solution ?

merci d'avance
Alex
alex_972 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 13h54   #2
Membre Expert
 
Inscription : août 2008
Messages : 1 271
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 271
Points : 1 929
Points : 1 929
Le SQL Dynamique natif
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 20
Vieux 26/09/2011, 14h12   #3
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
peux tu nous montrer ce que tu as fait pour t'aider!
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/09/2011, 15h52   #4
Futur Membre du Club
 
Inscription : septembre 2011
Messages : 51
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 51
Points : 15
Points : 15
Merci skuatamad.

C'est exactement ce qu'il me fallait. Au lieu de consulter la doc Oracle un tour dans les tuto de developpez.com aurait été plus rapide

boussafi, plus besoin merci quand meme
alex_972 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 17h00   #5
Futur Membre du Club
 
Inscription : septembre 2011
Messages : 51
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 51
Points : 15
Points : 15
Bonjour,

Me revoila !

Je n'arrive pas à exécuter la procédure que j'ai créé.

Lorsque je l'exécute en SQL, je n'ai pas de problème.
Code :
SQL>EXECUTE procedure(''argument1'',''argument2'');
Par contre en PL/SQL, j'ai une erreur de compilation...
Citation:
ORA-06550
PLS-00103: Encountered the symbol "argument1" when expecting one of the following
) , * & = - + < / > at in is mod remainder not rem =>
<an exponent (**)> <> or != or ~= >= <= <> and or like like2
like4 likec as between from using || multiset member
submultiset
Code :
1
2
3
4
BEGIN
EXECUTE procedure(''argument1'',''argument2'');
END;
/
alex_972 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 19h31   #6
Membre confirmé
 
Homme Grégoire MARTIN
Ingénieur développement logiciels
Inscription : janvier 2011
Messages : 128
Détails du profil
Informations personnelles :
Nom : Homme Grégoire MARTIN
Âge : 32
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2011
Messages : 128
Points : 225
Points : 225
Bonjour,

Code :
1
2
3
4
BEGIN
EXECUTE procedure('argument1','argument2');
END;
/
Si argument1 et 2 sont déclarés comme des varchar.
__________________
Cordialement.
ORA-007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/09/2011, 21h12   #7
Membre Expert
 
Inscription : août 2008
Messages : 1 271
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 271
Points : 1 929
Points : 1 929
execute est une commande sqlplus inutile dans un bloc begin end; puis que ça correspond à begin end;
Code :
1
2
3
4
BEGIN
   procedure('argument1','argument2');
END;
/
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 28/09/2011, 09h59   #8
Membre confirmé
 
Homme Grégoire MARTIN
Ingénieur développement logiciels
Inscription : janvier 2011
Messages : 128
Détails du profil
Informations personnelles :
Nom : Homme Grégoire MARTIN
Âge : 32
Localisation : France, Hauts de Seine (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Finance

Informations forums :
Inscription : janvier 2011
Messages : 128
Points : 225
Points : 225
Bonjour,

MéaCulpa , erreur de copier/coller
__________________
Cordialement.
ORA-007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h13.


 
 
 
 
Partenaires

Hébergement Web