Précédent   Forum du club des développeurs et IT Pro > Autres langages > Perl > SGBD
SGBD Toutes vos questions sur l'interaction entre Perl et les bases de données (SQL, mysql, postgresql, ORACLE, ...) Avant de poster, veuillez consulter les FAQs perl, les cours Perl.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 21/03/2012, 16h04   #1
theophanie77460
Invité de passage
 
Inscription : septembre 2010
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 8
Points : 1
Points : 1
Par défaut EOF non détecté sur appel sqlplus

Bonjour,
J'ai effectué de nombreuses recherches sur le web avant d'arriver sur developpez ( recherches également ici mais sans succès ).
Voici mon problème:
un serveur Windows 2000 SP4 dispose de perl ( sans le module DBD::Oracle ) et de cygwin.
Je souhaite interroger le base Oracle via sqlplus mais je bute sur le message d'erreur suivant :
"<< était inattendu"
Voici mon code :
Citation:
$retour_nodbd = qx { sqlplus -s system/password\@MABASE <<EOF
select sysdate from dual;
exit;
EOF };
La commande suivante fonctionne :
Citation:
$retour_nodbd=`tnsping MABASE`;
Cela fonctionne aussi pour :
Citation:
$retour_nodbd=`sqlplus system\/password\@MABASE \@mon_sql`;
Le problème semble provenir des caractères "<<".
Comment puis-je procéder ?

Merci

Jean-michel, Nemours
theophanie77460 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2012, 17h21   #2
theophanie77460
Invité de passage
 
Inscription : septembre 2010
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 8
Points : 1
Points : 1
Par défaut echo + pipe vers sqlplus

Bonjour,

L'url suivante donne la solution :
http://damir-vadas.blogspot.fr/2010/11/how-to-redirect-sqlplus-result-in.html
On a donc procédé ainsi :

Citation:
$my_sql="select sysdate from dual"; my $request="echo $my_sql\|sqlplus system/password"; $result=qx($request);
Merci

Jean-michel
theophanie77460 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 04h39.


 
 
 
 
Partenaires

Hébergement Web