Problème connexion java avec base de donnée Access sous éclipse

Bonjour, après avoir compiler le code java, éclipse m'affiche le message suivant :

Exception in thread "main" java.lang.NullPointerException
at projet1.test.main(test.java:34)

Merci de proposer une solution adéquate concernant ce problème.

2 réponses

  1. pose ton code pour qu'on puisse le voir
    1
    1. package projet1;

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

      public class test {
      public static void main(String[] args) {
      Connection con = null;
      ResultSet résultats = null;
      String requete = "";
      // chargement du pilote
      try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
      } catch (ClassNotFoundException e) {
      System.out.println("Impossible de charger le pilote jdbc:odbc");
      }
      //connection à la base de données
      System.out.println("connexion à la base de données");
      try {
      String BDurl = "jdbc:odbc:bd";
      con = DriverManager.getConnection(BDurl);
      } catch (SQLException e) {
      System.out.println("Connection à la base de données impossible");
      }
      //insertion d'un enregistrement dans la table client
      System.out.println("creation enregistrement");
      requete = "INSERT INTO client VALUES (15,'nom 15','prenom 15')";
      try {
      Statement stmt = con.createStatement();
      int nbMaj = stmt.executeUpdate(requete);
      System.out.println("nb mise a jour = "+nbMaj);
      } catch (SQLException e) {
      e.printStackTrace();
      }
      //creation et execution de la requete
      System.out.println("creation et execution de la requête");
      requete = "SELECT * FROM client";
      try {
      Statement stmt = con.createStatement();
      résultats = stmt.executeQuery(requete);
      } catch (SQLException e) {
      System.out.println("Anomalie lors de l'execution de la requête");
      }
      //parcours des données retournées
      System.out.println("parcours des données retournées");
      try {
      ResultSetMetaData rsmd = résultats.getMetaData();
      int nbCols = rsmd.getColumnCount();
      boolean encore = résultats.next();
      //pour afficher le nom des colonnes
      System.out.println("\n****************************************************");
      for(int i = 1; i <= rsmd.getColumnCount(); i++)
      System.out.print("\t" + rsmd.getColumnName(i) + "\t *");
      System.out.println("\n****************************************************");

      while (encore) {
      for (int i = 1; i <= nbCols; i++)
      System.out.print("\t" + résultats.getString(i) + "\t |");
      System.out.println();
      encore = résultats.next();
      }
      résultats.close();
      } catch (SQLException e) {
      System.out.println(e.getMessage());
      }
      System.exit(0);//quitter le prog

      }}
      0