Pb de récupération de Date
Bonjour à tous.
J'exécute le simplissime programme suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| public class Test {
/**
* @param args
*/
public static void main(String[] args) {
try {
DateFormat sdf_yyyyMMddHHmmssSSS = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss:SSS");
Class.forName("oracle.jdbc.OracleDriver");
Connection _baseConnection = DriverManager.getConnection(
"jdbc:oracle:thin:@ServeurOracle:1521:Schema",
"login", "password");
String query = "SELECT DISTINCT TRUNC(F.FACT_DATE,'DAY') AS DATE_ "
+ "FROM NIKU.NBI_PRT_FACTS F "
+ "WHERE F.PROJECT_ID = 5003779 "
+ "AND F.FACT_DATE BETWEEN TO_DATE('06/09/2010','DD/MM/YYYY') AND TO_DATE('03/10/2010','DD/MM/YYYY') "
+ "AND F.ETC_QTY > 0 AND F.RESOURCE_ID = 5039419";
Statement statement = _baseConnection.createStatement();
ResultSet resultSet = statement.executeQuery(query);
while (resultSet.next()) {
Date d = resultSet.getDate("DATE_");
System.out.println(sdf_yyyyMMddHHmmssSSS.format(d));
}
} catch (Exception e) {
e.printStackTrace();
}
}
} |
Exécuté sur ma machine de dev (Windows XP, JDK 1.6_13, Driver Oracle ojdbc14-9i-9.2.0.5.jar)
j'ai le résultat suivant :
Code:
1 2 3 4
| 2010/09/06 00:00:00:000
2010/09/13 00:00:00:000
2010/09/20 00:00:00:000
2010/09/27 00:00:00:000 |
Exécuté sur une machine de prod (Windows XP, JDK 1.6_13, Driver Oracle ojdbc14-9i-9.2.0.5.jar) (config équivalente donc)
j'ai le résultat suivant :
Code:
1 2 3 4
| 2010/09/05 00:00:00:000
2010/09/12 00:00:00:000
2010/09/19 00:00:00:000
2010/09/26 00:00:00:000 |
Soit un décalage de 24h sur toutes mes dates !!! :calim2:
Peu pratique pour une bonne exécution du programme.
Une idée ?
Merci à tous de votre aide