récup requête SQL texte auto générée [Hibernate ] - Java - Programmation
Marsh Posté le 11-07-2006 à 16:48:35
je vois quec'est une property
faudrait que je mette ca dans le fichier hbm.xml ?
Marsh Posté le 11-07-2006 à 17:01:41
ok c bon j'ai trouvé
mais ce qu'il m'affiche dans la console c'est du SQL "utilisable"
c que des this_.xxxxx
ya pas moyen d'avoir une version SQL "normale"
Marsh Posté le 11-07-2006 à 17:05:40
oué donc il m'affiche du HQL
et je voudrais récupéeer du SQL savoir ce qu'il envoie a MySQL
Marsh Posté le 11-07-2006 à 17:31:34
la property donnée par brisssou t'affiche effectivement du sql "utilisable".
(sous forme de prepared statement, donc si tu veux aussi les valeurs associées faut logger ce qui sort de la classe org.hibernate.Type (package au pif, à vérifier)
Marsh Posté le 11-07-2006 à 17:42:20
daprs la doc que j'ai lu cette property affiche du HQL, c a dire du SQL orienté objet, qui n'est pas directement exploitable dans une fenetre d'execution SQL
la classe org.Hibernate.Type (sauf si c au pif) permet de recuperer depuis la console le SQL standard ?
Marsh Posté le 11-07-2006 à 17:45:57
jokaritaff a écrit : daprs la doc que j'ai lu cette property affiche du HQL, c a dire du SQL orienté objet, qui n'est pas directement exploitable dans une fenetre d'execution SQL |
1) je sais ce qu'est le hql
2) cette property affiche du sql
3) relis bien ou sors des preuves
Marsh Posté le 11-07-2006 à 23:14:55
c'est bien du SQL (Tu va nous croire OUI !!!! :-D), mais écrit par Hibernate, donc il met ce qu'il veut comme alias de table/colonne/aggrégation, c'est son problème.
Et pour le sujet des preparedStatement, y a p6spy qui peut te permetre de voir les requêtes effectivement passées à la base, avec des paramètres valués.
Marsh Posté le 11-07-2006 à 23:39:49
(euh brisssou, pour info, la plupart des db (en tous cas bcp) supportent les prepared statement de maniere native, donc soit ta db ne les supporte pas - ça peut etre configuré au niveau du driver, aussi - ou alors p6spy triche et il ne te montre rien de réel - par contre, je répete que logger la categorie qui correspond à la classe Type permet de voir les bindings )
Marsh Posté le 12-07-2006 à 07:51:06
quand hbm log les requêtes, je vois toujours les marqueurs de paramètres '?'. Et si j'essaye d'exécuter ça tel quel, forcément, ça marche bof. Pour le coup de logger Type, je le note.
Marsh Posté le 12-07-2006 à 13:56:10
brisssou a écrit : quand hbm log les requêtes, je vois toujours les marqueurs de paramètres '?'. |
parce ce que c'est ce qui est réellement envoyé au driver
Et dans bcp de cas, le driver laisse passer ça tel quel à la db.
(d'ailleurs, plutot que de se faire chier avec p6spy, j'aurais tendance à suggérer d'aller jeter un oeil aux logs (configurés de maniere adequate) de la db... )
Marsh Posté le 11-07-2006 à 16:31:49
Bonjour,
Je travaille sur un projet JSF/Hibernate
et plus précisément sur un moteur de recherche qui fait ses requetes su rune base MySQL
j'aimerais récupérer la requete textuelle que genère Hibernate pour envoi a MySQL
afin de controler ce qu'il génère
merci