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

  FORUM HardWare.fr
  Programmation
  Java

  [Newbie] connection a MySQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Newbie] connection a MySQL

n°503620
GregTtr
Posté le 31-08-2003 à 22:02:06  profilanswer
 

Je cherche a comprendre comment me connecter a MySQL avec Java.
Mais je ne comprend rien a ce que me raconte sun.com.
Apparemment, il faut installer qqch, apparemment ca se recupere la: http://www.mysql.com/downloads/api-jdbc-stable.html d'apres un post precedent.
Mais apres, je ne sais pas ou ca s'installe, ce qu'i lfaut executer comme commande pour pouvoir se connecter effectivement, etc.
 
"Class.forName("sun.jdbc.odbc.JdbcOdbcDriver" );
 
Your driver documentation will give you the class name to use. For instance, if the class name is jdbc.DriverXYZ , you would load the driver with the following line of code:
 
Class.forName("jdbc.DriverXYZ" );
"
 
Mouais, la doc de mon driver que je ne sais aps ou mettre donc.
Bon, je suis a la masse, mais si en plus d'apprendre java, il faut installer des trucs et deviner ou s'installe quoi, c'est pas gagne pour moi... :cry:
 
Merci

mood
Publicité
Posté le 31-08-2003 à 22:02:06  profilanswer
 

n°503636
_gtm_
Posté le 31-08-2003 à 22:48:58  profilanswer
 

Je pense que tu peux installer mySQL la ou tu veux (comme toutes les applications quoi...)
Ensuite, il faut un driver, je ne sais pas si il est inclus dans ce que tu as telecharge. Le driver s'appelle connectorJ, il est aussi sur la page de telechargements de mySQL. Il faut l'installer quelque part aussi. Il faut ensuite ajouter l'archive contenant les pilotes (un fichier jar issu de ce que tu viens de telecharger) dans ton classpath. Ne me demande pas quel fichier, je ne sais pas. Si t'as pas envie de chercher lequel c'est, met les tous (pas taper...).
Et ensuite, il faut trouver le nom du driver dans la doc, qui est peut etre fournie avec la driver.
 
Bonne chance
gtm

n°503637
benou
Posté le 31-08-2003 à 22:57:39  profilanswer
 

1) récupérer le driver JDBC pour mysql là :  
http://www.mysql.com/downloads/dow [...] ick=mirror
tu décrompresse, c'est le jar à la racine.
 
2) mettre le jar dans ton classpath
 - si tu utilises un IDE c'est dans une des options de ton IDE
 - si tu fais ca à la main et que t'es sous win, ca se règle dans les propriétés windows :
sous win 9x :  
dans l'autoexec.bat : SET CLASSPATH=".;leCheminVersLesDriverJDBCJar"
sous win nt/2k:xp :  
démarrer/paramètres/panneau de config/system/avancé/variable d'environnement : tu créés une nouvelle variable d'environnement utilisateur : CLASSPATH et tu lui donnes la valeur ".;leCheminVersLesDriverJDBCJar"
 
3) dans ton prog java, chargé le driver :
        Class.forName("com.mysql.jdbc.Driver" );
 
4) tu fais ton brol.  
 
ex de prog qui affiche le contenu d'une table :

Code :
  1. import java.sql.*;
  2. public class TestJDBC {
  3. public static void main(String[] args) throws Exception {
  4.  // attention : dans cet exemple je me fais pas chier avec les exceptions  
  5.  Class.forName("com.mysql.jdbc.Driver" );
  6.  Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/taBase", "root", "" );
  7.  Statement stat = conn.createStatement();
  8.  ResultSet res = stat.executeQuery("Select * from TaTable" );
  9.  ResultSetMetaData meta = res.getMetaData();
  10.  // 1ere ligne : affichage des noms des colones
  11.  System.out.print("|" );
  12.  for (int i = 0; i < meta.getColumnCount(); i ++) {
  13.   String colName = meta.getColumnLabel(i);
  14.   int colSize = meta.getColumnDisplaySize(i);
  15.   System.out.print(indentLeft(colName, colSize));
  16.   System.out.print("|" );
  17.  }
  18.  System.out.println();
  19.  // affichage des données
  20.  System.out.print("|" );
  21.  while (res.next()) {
  22.   for (int i = 0; i < meta.getColumnCount(); i ++) {
  23.    // récupère la valeur sous forme de chaine
  24.    String colValue = res.getString(i);
  25.    int colSize = meta.getColumnDisplaySize(i);
  26.    System.out.print(indentLeft(colValue, colSize));
  27.    System.out.print("|" );
  28.   }
  29.  }
  30.  System.out.println();
  31. }
  32. public static String indentLeft(String s, int space) {
  33.  StringBuffer buf = new StringBuffer(space);
  34.  for (int i = 0; i < space - s.length(); i++) {
  35.   buf.append(' ');
  36.  }
  37.  buf.append(s);
  38.  return buf.toString();
  39. }
  40. }


j'ai pas mysql => j'ai pas pu tester => c'est pas garantit à 100% que ca marche direct. Mais bon, en gros y a les principes, koi :o
 
PS : tu ferais bien de changer le titre du topic et de mettre [java] au début si tu veux que les concernés le voient


Message édité par benou le 31-08-2003 à 23:49:00

---------------
ma vie, mon oeuvre - HomePlayer
n°503775
GregTtr
Posté le 01-09-2003 à 09:22:45  profilanswer
 

benou a écrit :

1) récupérer le driver JDBC pour mysql là :  
http://www.mysql.com/downloads/dow [...] ick=mirror
tu décrompresse, c'est le jar à la racine.
 
2) mettre le jar dans ton classpath
 - si tu utilises un IDE c'est dans une des options de ton IDE
 - si tu fais ca à la main et que t'es sous win, ca se règle dans les propriétés windows :
sous win 9x :  
dans l'autoexec.bat : SET CLASSPATH=".;leCheminVersLesDriverJDBCJar"
sous win nt/2k:xp :  
démarrer/paramètres/panneau de config/system/avancé/variable d'environnement : tu créés une nouvelle variable d'environnement utilisateur : CLASSPATH et tu lui donnes la valeur ".;leCheminVersLesDriverJDBCJar"
 
3) dans ton prog java, chargé le driver :
        Class.forName("com.mysql.jdbc.Driver" );
 
4) tu fais ton brol.  
 
ex de prog qui affiche le contenu d'une table :

Code :
  1. import java.sql.*;
  2. public class TestJDBC {
  3. public static void main(String[] args) throws Exception {
  4.  // attention : dans cet exemple je me fais pas chier avec les exceptions  
  5.  Class.forName("com.mysql.jdbc.Driver" );
  6.  Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/taBase", "root", "" );
  7.  Statement stat = conn.createStatement();
  8.  ResultSet res = stat.executeQuery("Select * from TaTable" );
  9.  ResultSetMetaData meta = res.getMetaData();
  10.  // 1ere ligne : affichage des noms des colones
  11.  System.out.print("|" );
  12.  for (int i = 0; i < meta.getColumnCount(); i ++) {
  13.   String colName = meta.getColumnLabel(i);
  14.   int colSize = meta.getColumnDisplaySize(i);
  15.   System.out.print(indentLeft(colName, colSize));
  16.   System.out.print("|" );
  17.  }
  18.  System.out.println();
  19.  // affichage des données
  20.  System.out.print("|" );
  21.  while (res.next()) {
  22.   for (int i = 0; i < meta.getColumnCount(); i ++) {
  23.    // récupère la valeur sous forme de chaine
  24.    String colValue = res.getString(i);
  25.    int colSize = meta.getColumnDisplaySize(i);
  26.    System.out.print(indentLeft(colValue, colSize));
  27.    System.out.print("|" );
  28.   }
  29.  }
  30.  System.out.println();
  31. }
  32. public static String indentLeft(String s, int space) {
  33.  StringBuffer buf = new StringBuffer(space);
  34.  for (int i = 0; i < space - s.length(); i++) {
  35.   buf.append(' ');
  36.  }
  37.  buf.append(s);
  38.  return buf.toString();
  39. }
  40. }


j'ai pas mysql => j'ai pas pu tester => c'est pas garantit à 100% que ca marche direct. Mais bon, en gros y a les principes, koi :o
 
PS : tu ferais bien de changer le titre du topic et de mettre [java] au début si tu veux que les concernés le voient


 
OK, merci beaucoup, c'est deja plus clair.
Je vais essayer ca ce soir.
Apres, pour l'exemple pour se connecter en pratique, ca devrait aller, pour les queries, c'est juste du vocabulaire, il n'y aura pas de probleme, c'etait pour comprendre quoi installer et comment (genre pour moi le classpath, ca ne signifie rien, quand j'entend ca, ca me donne direct le regard bovin ;) )
La avec ton explication pas a pas, ca devrait aller mieux, merci.

n°503802
benou
Posté le 01-09-2003 à 09:36:19  profilanswer
 

un de ces quatre quand j'aurais le temps je ferais un petit topo sur le classpath. On a des tas de topic où les gens bloquent là dessus :/


---------------
ma vie, mon oeuvre - HomePlayer
n°504232
the real m​oins moins
Posté le 01-09-2003 à 15:25:37  profilanswer
 

benou >> les bons point c'est pas illimité hein :D


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°504266
benou
Posté le 01-09-2003 à 15:51:56  profilanswer
 

the real moins moins a écrit :

benou >> les bons point c'est pas illimité hein :D


;)
 
nan mais sérieux, ca revient toujours comme problème. C'est lourd :o


---------------
ma vie, mon oeuvre - HomePlayer
n°504271
the real m​oins moins
Posté le 01-09-2003 à 15:56:00  profilanswer
 

benou a écrit :


;)
 
nan mais sérieux, ca revient toujours comme problème. C'est lourd :o

clair
on devrait faire un wiki, ça serait simple à faire :o
faut juste trouver où le hoster.
(php+mysql, pas de pubs, et plus rapide que free; bien que ça devrait aller, c'est pas phpMyGallery et ces 50 requetes par page non plus :o)


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°504282
gizmo
Posté le 01-09-2003 à 16:00:52  profilanswer
 

[mode digression=ON]
hébergez-le sur WebDynamit
[mode digression=OFF]

n°504287
the real m​oins moins
Posté le 01-09-2003 à 16:02:48  profilanswer
 

gizmo a écrit :

[mode digression=ON]
hébergez-le sur WebDynamit
[mode digression=OFF]

tu m'interesses là [:meganne]
excellent dis-donc, je connaissais pas
 
surtout ne pas trop en parler, sinon ça va partir en couilles  :wahoo:


Message édité par the real moins moins le 01-09-2003 à 16:04:29

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?

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

  [Newbie] connection a MySQL

 

Sujets relatifs
problème de mysqlduplication bidirectionnelle postgresql et mysql
[newbie] Pb pour ecrire dans base de donnée ?Pb de Date par défaut avec MySQL
[newbie] Cretation table SQL ?Question sur les type MYSQL
[PHP/mySQL] Importation "gros" dumps via phpMyAdmin sur free.fr[mySQL] petits calculs
[PHP5] Pas de MySQL dans Php5 beta?Php/Mysql sur CD-Rom, c'est possible?
Plus de sujets relatifs à : [Newbie] connection a MySQL


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