MSACCESS, JDBC et les Dates

gehach Messages postés 6 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 16 avril 2003 - 15 avril 2003 à 08:54
gehach Messages postés 6 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 16 avril 2003 - 16 avril 2003 à 14:57
Bonjour,

J'ai besoins d'aide.

Je suis étudiant et doit produire un projet JAVA sur JDBC.

Je rencontre un problème :

Je n'arrive pas, avec sun.jdbc.odbc.JdbcOdbcDriver, à récupérer les dates d'une base ACCESS 97.
Les dates sont de "Types.String", mais le getString() ne me les renvoie pas?
L'un d'entre vous peut-il m'aider ?
Merci d'avance.

4 réponses

cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
15 avril 2003 à 09:30
salut, montre ton code parceque la c est louche ;)
Duss
0
gehach Messages postés 6 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 16 avril 2003
15 avril 2003 à 15:17
Bonjour,

Merci de ta vélocité...

Voici mon code, comme tu peux le voir, d'après mes différentes recherches sur le sujet, je n'ai rien inventé !

////////////////////////////////////////////////////////////////////////////////////////////////////////
public void AffecteValeurs(ResultSet P_RSet)
{
try
{
int type = 0;
String Wtype=new String();
META_ResultSet.next();
for (int j = 0 ; j < W_nbCols ; j++)
{
type = META_RSetMetaData.getColumnType(j+1);
switch (type)
{

case Types.CHAR :
case Types.VARCHAR :
case Types.LONGVARCHAR : G_Grille[j][2] = P_RSet.getString(j+1).toString(); break;
case Types.TINYINT : {
if ( META_RSetMetaData.getPrecision(j+1) == 1)
G_Grille[j][2] = new Integer(P_RSet.getInt(j+1));
else if (P_RSet.getInt(j+1) == 0)
G_Grille[j][2] = new Boolean(false);
else
G_Grille[j][2] = new Boolean(true);
break;
}
case Types.SMALLINT :
case Types.INTEGER : G_Grille[j][2] = new Integer(P_RSet.getInt(j+1)); break;
case Types.DATE : {
G_Grille[j][2] = P_RSet.getDate(j+1);
System.out.println("C'est une date !!!");
break;}
default : break;
}
}
}
catch ( SQLException E) {AffExcp(E, "AffecteValeurs");}
}

Merci d'avance...
0
cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
15 avril 2003 à 16:25
pourquoi fais tu un toString sur un string ?
tu n as pas besoin ;)
Duss
0
gehach Messages postés 6 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 16 avril 2003
16 avril 2003 à 14:57
Merci.

En fait, le problème était que les dates ACCESS ne sont pas des dates, mais des TIMESTAMP.

Avec :
case Types.TIMESTAMP : data[i][j] = P_RSet.getTimestamp(j+1).toString();
ça marche.
0