Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forums MacBidouille _ Les Langages Du Web _ lien entre java et mysql ?

Écrit par : satan87 29 Mar 2004, 09:52

bonjour

je dois faire un programme JAVA qui se connecte a une base de donnée MYSQL

qq sait faire ?
ou sait comment faire (config d'un dns sur mac et lien avec la base de donnée)

merci d'avance

Écrit par : satan87 29 Mar 2004, 12:47

bonjour

je viens de trouver un espece de drivers
org. ... . drivers
ou com . ... .drivers

par contre je ne sia spas ou l'installer

si qq l'a deja fait

merci

Écrit par : dj t@l 29 Mar 2004, 13:39

Il faut utiliser le connecteur jdbc pour utiliser java et mysql ensemble.Regarde par http://www.mysql.com/products/connector-j/ pour le telecharger.Si mes souvenirs sont bon il y a un esample livré avec et de toute les facon il y la docs qui explique comment faire dedans.

C est possible a faire je doit avoir un ex chez moi si tu as besoin...

HTH

Écrit par : Sken 31 Mar 2004, 15:28

Tu peux aller voir http://cappuccino.devue.be/articles/mysql.htm, il est très bien expliqué comment tout installer, et ensuite, sur le même site il y a un tutoriel pour apprendre à se servir de la base mysql

Écrit par : kirk 22 Nov 2006, 19:42

Il y aurait quelqu'un qui aurait fait la manip récemment ou qui aurait un lien vers un site récent qui explique en détail comment procéder ?

J'avoue que je galère pas mal depuis hier sad.gif

Pour info, je suis sur un macintel avec la dernière version de mac os et MAMP pour apache/php/mysql

D'avance merci

Écrit par : arnaudp 24 Nov 2006, 17:45

vas voir http://cocoamysql.sourceforge.net/

c'est super... c'est en obj c je crois me souvenir, mais ça marche avec java. En plus ya les sources.

Écrit par : arnor 24 Nov 2006, 18:05

C'est pas bien dure...
Pour la connexion :

CODE
Class.forName( "com.somejdbcvendor.TheirJdbcDriver" ); //avec les pilotes

Ceci permet de charger les pilotes...dans le class loader

CODE
Connection conn = DriverManager.getConnection(
     "jdbc:somejdbcvendor:other ",     //du genre jdbc:mysql://localhost:3306/dbname"
          "user",
     "myPassword" );

Tu essayes de de connecter en donnant l'emplacement de la db, ton usrname et pwd
3°PS: tu es connecte a la base de données
CODE
Statement stmt = conn.createStatement();
try {
    stmt.executeUpdate( "INSERT INTO MyTable( name ) VALUES ( 'my name' ) " );
} finally {
    //It's important to close the statement when you are done with it
    stmt.close();
}

==> pour executer une requete...en insertion
CODE
Statement stmt = conn.createStatement();
try {
    ResultSet rs = stmt.executeQuery( "SELECT * FROM MyTable" );
    try {
        while ( rs.next() ) {
            int numColumns = rs.getMetaData().getColumnCount();
            for ( int i = 1; i <= numColumns; i++ ) {
               //Column numbers start at 1.
               //Also there are many methods on the result set to return
               // the column as a particular type. Refer to the Sun documentation
               // for the list of valid conversions.
               System.out.println( "COLUMN " + i + " = " + rs.getObject(i) );
            }
        }
    } finally {
        rs.close();
    }
} finally {
    stmt.close();
}

==> pour executer une requete en consultation...
Voilà les bases, pour le reste lis la javadoc...n'oublie pas les import java.sql.*;

Écrit par : kirk 27 Nov 2006, 22:58

merci, j'ai trouvé où était mon problème, j'avais pas placé le driver dans le bon répertoire, ça marche impec maintenant

Écrit par : arnor 28 Nov 2006, 19:38

hello,
coincidence...je dois creer un db-converter avec jdbc, je viens de le tester avec mysql et...marche pas, tu pourrais me dire ce que tu as fait...
j'ai un message du genre user pas autorise a se connecter, pourtant je me connecte avec le root...
merci

Écrit par : kirk 29 Nov 2006, 14:08

Attention, faudrait demander à quelqu'un ayant plus d'expérience que moi, mais je ne pense pas que le root du système et le root mysql soient le même !

Il faut te connecter avec le root mysql, dont le mot de passe par défaut est généralement vide (ou égal à "root" avec MAMP)

Écrit par : JavaDebutant 24 Jan 2007, 10:24

Bonjour à tous, tout nouveau sur le forum

Je me suis inscrit pour vous joindre, je n'arrive pas à installer le driver en question dans mamp afin de connecter java à mysql de mamp.

J'ai vu que vous y etes arrivé il y a peu de temps....


Pouvez vous me contacter?

Écrit par : JavaDebutant 24 Jan 2007, 11:06

CITATION(kirk @ 27 Nov 2006, 22:58) [snapback]1998182[/snapback]

merci, j'ai trouvé où était mon problème, j'avais pas placé le driver dans le bon répertoire, ça marche impec maintenant



ou faut il le placer?

J'ai entendu parler de class path.

Je dois faire aussi une appli java avec lien vers bdd mysql, et je fais aussi tourner mamp

Écrit par : kirk 24 Jan 2007, 13:23

Alors, c'est dans /Library/Java/extension/ de mémoire qu'il faut que tu places le .jar

Écrit par : JavaDebutant 24 Jan 2007, 13:28

c'est fait.

Ensuite ca devient quoi le

Class.forName("com.mysql.jdbc.Driver");

pour s'y connecter, c'est la bonne adresse?

je l'ai mis comme tu m'as dit, ensuite j'ai fait une classe comme ca dans un fichier GestionCanard.java

CODE
//la connection java-mysql
import java.sql.*;

public class GestionCanard {
    public static void main(String args[]) {

    // The URL that will connect to TECFA's MySQL server
        // Syntax: jdbc:TYPE:machine:port/DB_NAME
        String url = "jdbc:mysql:localhost:8889/gestion";

    // INSTALL/load the Driver (Vendor specific Code)
    try {
        Class.forName("com.mysql.jdbc.Driver");
    } catch(java.lang.ClassNotFoundException e) {
        System.err.print("ClassNotFoundException: ");
        System.err.println(e.getMessage());
    }

        try {
        Connection con;
        Statement stmt;
        
        // Establish Connection to the database at URL with usename and password
            con = DriverManager.getConnection(url, "root", "root");
        System.out.println ("Hello, Connection to the Gestion table a marché");
            con.close();

        } catch(SQLException ex) {
            System.err.println("==> SQLException: ");
          while (ex != null) {
          System.out.println("Message:   " + ex.getMessage ());
          System.out.println("SQLState:  " + ex.getSQLState ());
          System.out.println("ErrorCode: " + ex.getErrorCode ());
          ex = ex.getNextException();
          System.out.println("");
          }
        }
    }
}

    


qui se trouve dans le dossier /GestionPti/
j'ai compiler en faisant javac
et au moment d'executer il me dit no suitable driver...

Écrit par : XL 24 Jan 2007, 21:03

Moi j'ai créé pour un projet cette classe Database

CODE

package GGP_Server;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
* The Database class allows to send queries to
* the MySQL Database.
*/
class Database {
    private String driver;
    private String url;
    private Connection connection = null;
    //private DatabaseMetaData metaData = null;
    private Statement statement = null;
    private ResultSet resultSet = null;

    /**
     * Class constructor.
     *
     * @param driver  the driver to be connected to the database
     *                using java and JDBC.
     * @param url     the url location of the database.
     */
    Database (String driver, String url) {
    this.driver = driver;
    this.url = url;
    }

    /**
     * Starts connection to the database. Queries can then be executed.
     * @exception SQLException if there has been an error in the MySQL querie.
     * @exception Exception    if the connection to the database can't be established.
     *
     */
    void start() throws SQLException, Exception {
    if (connection != null) {
        stop();
    }
    Class.forName(driver).newInstance();
    connection = DriverManager.getConnection(url);
    //DatabaseMetaData dbmt = connection.getMetaData();

    statement = connection.createStatement();

    }

    /**
     * Closes the connection to the database.
     * @exception SQLException if there's an error trying to close the connection
     *                         to the database.
     */
    void close() throws SQLException {
    if (resultSet != null) {
        resultSet.close();
        resultSet = null;
    }
    }

    /**
     * Executes a query on the database. Database must have been started.
     * Closing the returned ResultSet is optional.
     * @param query the MySQL query that will be executed on the database.
     * @return the result of the MySQL query.
     * @exception SQLException if there's been an executing the query on the database.
     */
    ResultSet query(String query) throws SQLException {
    close();
    resultSet = statement.executeQuery(query);
    return resultSet;
    }

    /**
     * Stops connection to <code>Database</code>.
     * Queries cannot be sent any more unless <code>Database</code>
     * is started again.
     * @exception SQLException if there's been an error closing connections.
     */
    void stop() throws SQLException {
    if (connection != null) {
        close();

        if (statement != null) {
        statement.close();
        }

        if (connection != null) {
        connection.close();
        }
        connection = null;
    }
    }
}

Écrit par : JavaDebutant 24 Jan 2007, 21:50

et tu as la meme chose pour les insertions?

Écrit par : sk@@z 30 Mar 2007, 08:57

J'ai bien pris le connecteur je l'ai placé dans libary/java/extension
dans eclipse je l'ajoute dans add external jars et là le bouton ok n'est pas utilisable il m'est donc impossible de rajouter le connecteur, quelqu'un peut'il m'aider.

Écrit par : lapakrette 19 Oct 2007, 22:18

Salut,

Je ne sais pas si tu as le même problème que moi, mais au début le compilateur me donnait la même erreur. En fait, j'ai juste mis le .jar du mysql connector dans le fichier ext de ton jre (par exemple dans C:\Program Files\Java\jre1.6.0_03\lib\ext si ton jre est dans program files. Après si tu bosses sur Linux, je ne sais pas trop... En tout cas, moi, qui bosse sur ce bon vieux win win et avec Eclipse, après ça a fonctionné comme sur des roulettes.

En espérant que ça résoudra ton problème....

Écrit par : adriana14 25 Apr 2014, 10:48

fait un coup d'oeil sur ce jolie tuto
http://www.vogella.com/tutorials/MySQLJava/article.html

Écrit par : yponomeute 25 Apr 2014, 10:50

Faut espérer qu'au bout de 7 ans il a trouvé une solution laugh.gif

Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)