peut etre ceci qui fonctionne tres bien sous Oracle:

Query = � SELECT * FROM customer C LEFT OUTER JOIN project P ON C.id_customerP.id_customer �

-----Message d'origine-----
De : Libert S�bastien [mailto:[EMAIL PROTECTED]]
Envoy� : mardi 24 d�cembre 2002 10:23
� : '[EMAIL PROTECTED]'
Objet : JDBC - TableName . FieldName

Hello !

 

En ce jour de r�veillon de No�l, je fais appel aux braves de la liste ;-)

 

Je suis en cours de test de migration d'une application JDBC MySQL vers SQLServer. Je vous passe bien entendu le plaisir �vident de trouver le driver JDBC pas cher et sympa... bref, je tombe sur un os.

J'ai pris comme habitude dans mes rs.getString () d'utiliser les noms complets (table+champs) pour acc�der � mes donn�es. Cela me permets d'�viter les soucis avec les nombreux JOIN de mes requ�tes.

 

 

Ainsi :

 

Query = � SELECT * FROM customer LEFT OUTER JOIN project ON customer.id_customer = project.id_customer �

Rs = stmt.executeQuery (Query);

Cust = Rs.getString ("customer.name");

Proj = Rs.getString ("project.name");

 

 

Cela fonctionne sous MySQL.

 

 

Maintenant, le code ci-dessus sous SQL Server me donne une erreur � Invalid column name �. En gros, interdiction d'utiliser le nom complet des champs.

Il y a �videmment la clause AS � placer dans la requ�te SQL pour �viter les soucis, mais cela ne fonctionne pas avec un SELECT *.

 

Quelqu'un aurait-il une id�e g�niale ?

Comment puis-je �viter de r��crire mon application quasiment de fond en comble ?

 

 

 

 

S�bastien Libert

SOGID.

 

Répondre à