Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels 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 15/01/2008, 23h58   #1
Nouveau Membre du Club
 
Inscription : mai 2005
Messages : 182
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 182
Points : 39
Points : 39
Par défaut ORA-00933: SQL command not properly ended

Bonjour

Mon application se connnecte a une base oracle par ODBC. Je suis actuellement sous linux.
Quand j'execute cette requette dans le code :
Code :
1
2
3
 odbc::PreparedStatement* pstmt = con->prepareStatement("SELECT c.idChannel,c.name,s.server,s.port,s.path,s.username,s.psword,c.businessHourTimeZoneOffset,c.businessHourFrom,c.businessHourTo,c.dateStart,c.dateFinish,c.dateFrequence FROM Channel AS c, SFTPCredential AS s WHERE c.type_=? AND c.deleted=0 AND c.nature=0 AND c.active=1 AND c.idCredential=s.idSFTPCredential");
pstmt->setInt(1, CT_SFTP);
odbc::ResultSet* prs = pstmt->executeQuery();
J'ai cette erreur :
Citation:
[Easysoft][Oracle]ORA-00933: SQL command not properly ended at offset 188
Je ne comprends pas tres bien ou est le probleme. Ce code s'éxute tres bien avec une base ORACLE sous windows, et avec mysql sous windows et sous linux.

Est ce que qq un a une idée, ou une piste?

merci a bientot
yupa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 10h15   #2
Rédacteur
 
Inscription : décembre 2002
Messages : 2 397
Détails du profil
Informations personnelles :
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : décembre 2002
Messages : 2 397
Points : 3 298
Points : 3 298
Citation:
Envoyé par yupa Voir le message
Ce code s'éxute tres bien avec une base ORACLE sous windows
Ca je demande à voir !

Votre erreur est signalée à la position 188 de la requête.
C'est là que vous avez un alias de table introduit par AS.
Si vous supprimez tous vos AS, ça devrait aller mieux.

En effet, si vous consultez la doc Oracle, vous verrez que les alias de colonne peuvent optionnellement être introduits par AS, mais pas les alias de table.

On peut donc faire
Code :
SELECT tour_de_poitrine AS tp FROM miss_france mf;
Mais pas
Code :
SELECT tour_de_poitrine tp FROM miss_france AS mf;
__________________
Consultant / formateur Oracle indépendant
Certifié OCP 10g et 11g, sécurité 11g
Pomalaix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 13h21   #3
Nouveau Membre du Club
 
Inscription : mai 2005
Messages : 182
Détails du profil
Informations forums :
Inscription : mai 2005
Messages : 182
Points : 39
Points : 39
Merci ca marche
Avec Oracle express et sous windows, ce code s'execute tres bien.
yupa 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 08h08.


 
 
 
 
Partenaires

Hébergement Web