Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2002 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [RESOLU] Obtenir le resultat d'une requete et le nombre de reponse

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU] Obtenir le resultat d'une requete et le nombre de reponse

n°783301
boubavic
Posté le 01-07-2004 à 11:10:51  profilanswer
 

Salut,
 
 
Je fais une ptite appli qui utilise une base MySQL et un pont JDBC. Je recupere donc le resultat des mes requetes dans un objet ResultSet. Et j'aimerai savoir s'il est possible de recuperer le resultat d'une requete et le nombre de reponse en une seule requete. (sans faire un num_row dans une deuxieme requete)
 
Merci


Message édité par boubavic le 01-07-2004 à 18:04:30
mood
Publicité
Posté le 01-07-2004 à 11:10:51  profilanswer
 

n°783322
nerisson
Pic-pic
Posté le 01-07-2004 à 11:25:38  profilanswer
 

Non ce n'est pas possible.
Tu dois parcourir ton ResultSet en utilisant la méthode next() jusqu'a qu'il n'y ai plus de résultat disponible, et à ce moment la tu sauras combien de lignes tu as récupéré.


---------------
Light is right
n°783362
boubavic
Posté le 01-07-2004 à 11:49:34  profilanswer
 

merci c'est bien ce que je me disais ...
 
en fait ce que je veux faire, c'est mettre en forme mes données pour les intégrer a une ihm. Mon IHM prend en parametre soit des tableaux soit des matrices donc il me faut forcement le nombre d'enregistrement...il va donc falloir que je fasse ca en 2 phases ...
C'est dommage mais bon merci

n°783363
senternal
Posté le 01-07-2004 à 11:49:43  profilanswer
 

Si, c'est possible...
 

Code :
  1. try
  2. {
  3.     // Move to last position
  4.     resultSet.last();
  5.     // Retrieves the current row number
  6.     rowCount = resultSet.getRow();
  7.     // Move cursor before before the first row
  8.     resultSet.beforeFirst();
  9.     while(resultSet.next())
  10.     {
  11.         ...

n°783371
nerisson
Pic-pic
Posté le 01-07-2004 à 11:54:59  profilanswer
 

Oki mais ca ne marche pas si ton ResultSet est de type TYPE_FORWARD_ONLY.
Et malheureusement la pluspart des driver JDBC n'acceptent pas d'autres type.


---------------
Light is right
n°783381
boubavic
Posté le 01-07-2004 à 12:03:12  profilanswer
 

merci va falloir que je test ca...mais je sais pas si mon driver le supporte ...on va bien voir ...merci

n°783398
senternal
Posté le 01-07-2004 à 12:16:10  profilanswer
 

nerisson a écrit :

Et malheureusement la pluspart des driver JDBC n'acceptent pas d'autres type.


 
:heink:, en 1.0 peut-etre mais en 2.0 justement l'utilité du TYPE_FORWARD_ONLY prend tout son sens...

n°783410
boubavic
Posté le 01-07-2004 à 12:25:59  profilanswer
 

bon ben le mien fonctionne donc c'est cool ;) merci a tous

n°783418
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 12:32:29  profilanswer
 

nerisson a écrit :

Oki mais ca ne marche pas si ton ResultSet est de type TYPE_FORWARD_ONLY.
Et malheureusement la pluspart des driver JDBC n'acceptent pas d'autres type.


Deplus, si mes souvenirs sont bon, JDBC n'est qu'un pont par dessus ODBC, hors un grand nombre de SGBD (Oracle le premier) ont des drivers ODBC - et du coup, certainement JDBC - complètement buggés. Les move(), count() et autre retournent souvent des résultats étrange...
 
Un bug amusant avec SQL Server 6.5, c'était qu'un count() sur une requête avec jointure retournait le nombre de lignes de la première table, sans conditions. Truc qui n'avais rien à voir avec la réalité.
 
Oracle 8.0.5, c'est -1 qui est retourné systématiquement.
 
SQL Server 7.0, quand il y a un champ de type "text" (un blob) ça fait -1 aussi, alors qu'avec Oracle, ODBC ne supporte carrément pas du tout les type blod (comme ça c'est réglé)
 
Enfin bon...
 
Pas d'autre choix que de faire un next() en incrémentant un conteur, puis un first() pour revenir (normalement, first() marche même quand tu est en FORWARD_ONLY, du moins quand tu bosses en ODBC)

n°783434
benou
Posté le 01-07-2004 à 12:57:40  profilanswer
 

Arjuna a écrit :

JDBC n'est qu'un pont par dessus ODBC


t'es souvenirs sont mauvais.
ce serait idiot. Comment voudrais tu que ca fonctionne sur d'autres os que windows ?
 
il existe un pont jdbc-odbc, ca veut pas dire que ca se limite à ca ...


---------------
ma vie, mon oeuvre - HomePlayer
mood
Publicité
Posté le 01-07-2004 à 12:57:40  profilanswer
 

n°783470
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 13:34:04  profilanswer
 

ODBC est tout à fait supporté sur d'autres systèmes que Windows...


Message édité par Arjuna le 01-07-2004 à 13:34:15
n°783478
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 13:38:25  profilanswer
 

Par exemple, quelques drivers ODBC pour Unix.
http://www.minisoft.com/pages/midd [...] _UNIX.html

n°783484
benou
Posté le 01-07-2004 à 13:42:24  profilanswer
 

Arjuna a écrit :

ODBC est tout à fait supporté sur d'autres systèmes que Windows...


bon, je retire ma remarque. désolé :/
 
mais le reste est vrai : les drivers JDBC sont des drivers dédiés à une base. On peut, si on le souhaite passer par un pont JDBC-ODBC, mais c'est pas conseillé : ca tue les perfs.


---------------
ma vie, mon oeuvre - HomePlayer
n°783503
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 14:06:48  profilanswer
 

OK. Je pensais (peut-être que c'était vrai au tout début) que JDBC passait forcément par ce pont.
 
Quand j'étais étudiant, un groupe avait décidé de faire une appli en Java qui tapait dans une base access, et c'est la seule technique qu'ils avaient trouvé. Perso j'ai jamais fait de Java (enfin si, un coup, sauf que ça a planté et ça a niqué mon secteur de boot alors j'y ai plus jamais touché :D)

n°783542
benou
Posté le 01-07-2004 à 14:32:48  profilanswer
 

Arjuna a écrit :

OK. Je pensais (peut-être que c'était vrai au tout début) que JDBC passait forcément par ce pont.


non [:spamafote]
 

Arjuna a écrit :


Quand j'étais étudiant, un groupe avait décidé de faire une appli en Java qui tapait dans une base access,


ouais, avec access c'est la merde : y a des drivers JDBC, mais ils sont tous payant je crois ...
 

Arjuna a écrit :

. Perso j'ai jamais fait de Java (enfin si, un coup, sauf que ça a planté et ça a niqué mon secteur de boot alors j'y ai plus jamais touché :D)


[:le kneu]
 
balèze !  [:netbios]


---------------
ma vie, mon oeuvre - HomePlayer
n°783556
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 14:37:58  profilanswer
 

Bah j'ai écrit un programme (Hello World) avec Visual J++, et j'ai voulu le faire tourner avec la machine de sun. Boum :sweat:
 
Le pire, c'est que je venais de passer la matinée à réinstaller NT4 exprès pour avoir une jolie machine toute propre pour faire du java...
 
J'ai réinstallé, j'ai remis IIS et j'ai continué à faire de l'ASP, c'est plus stable :D

n°783614
benou
Posté le 01-07-2004 à 15:06:12  profilanswer
 

Arjuna a écrit :

Bah j'ai écrit un programme (Hello World) avec Visual J++


ha ouais d'accord, tu dis tout en 2 fois :D
 
et puis bon, du J++ ca a jamais été vraiment du java ...
 

Arjuna a écrit :

J'ai réinstallé, j'ai remis IIS et j'ai continué à faire de l'ASP, c'est plus stable :D


ouais mais là non quoi :o


---------------
ma vie, mon oeuvre - HomePlayer
n°783631
Arjuna
Aircraft Ident.: F-MBSD
Posté le 01-07-2004 à 15:16:46  profilanswer
 

benou a écrit :

ha ouais d'accord, tu dis tout en 2 fois :D
 
et puis bon, du J++ ca a jamais été vraiment du java ...


Ben à l'époque j'étais jeune et con... Maintenant je suis moins jeune [:canaille]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [RESOLU] Obtenir le resultat d'une requete et le nombre de reponse

 

Sujets relatifs
[RESOLU]passage par l'url en asp[VBA] Insérer numéro de page dans tableau [RESOLU]
[javascript] Qu'est-ce que ne comprend pas ie ? [resolu]Pb avec l'affichage du nom et de la version d'un navigateur [Resolu]
[vbs] Comment ouvrir un fichier et récupérer le résultat d'une cmd[RESOLU] redirection vers page + include
Problème requête sql base oracleRequete dans DBA studio
[PHP] - Connaitre le nombre defichier dans un répertoire[résolu] plusieurs édition dans une seule requete
Plus de sujets relatifs à : [RESOLU] Obtenir le resultat d'une requete et le nombre de reponse


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR