Bonne et heureuse année à tout le monde !

Je voulais avec JDBC attaquer une base de données. J'ai ainsi fait la requête suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
public void rechercheParDate(){ 
		Statement st=null;
		ResultSet rs=null;
		try {
			st=connect.createStatement(); 
			rs=st.executeQuery("SELECT Vol.NumVol, Vol.DateVol, Vol.HeureVol, Vol.VilleDep, Vol.VilleArr, Vol.TypeVol"+
					" FROM Vol WHERE (((Vol.DateVol)='"+"02/07/09"+"'))");
 
			while(rs.next()){
				System.out.println(rs.getString("NumVol")+" "+rs.getDate("DateVol")+" "+rs.getTime("HeureVol")+" "+
						rs.getString("VilleDep")+" "+rs.getString("VilleArrivee")+" "+rs.getString("TypeVol"));
			}
		} catch (SQLException e) {e.printStackTrace();}
 
	}
Quand j'exécute mon code, j'ai une erreur avec mon critère dans WHERE. Au fait, c'est avec la date que j'ai des problèmes.

J'ai aussi un embarrat entre java.util.Date et java.sql.Date, quel type utilisé pour mes dates.

Voici l'erreur qui s'affiche :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
 
java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Type de données incompatible dans l'expression du critère.
	at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)
	at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
	at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3111)
	at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:338)
	at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:253)
	at af.CompagnieAf.rechercheParDate(CompagnieAf.java:41)
	at af.GestionAF.main(GestionAF.java:16)