sql >> Databáze >  >> RDS >> Oracle

ResultSet.getString(Date) se liší podle ovladače

Neměli byste nikdy spoléhat na to, že ovladač implicitně převede datum do jakéhokoli konkrétního formátu řetězce – formát je implementační detail ovladače. Převod byste měli zvládnout sami.

To lze provést buď na úrovni Java:

/* executing the statement, etc. - snipped for clarity */
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
while (rs.next()) {  
    Date date = rs.getTimestamp(1);
    System.out.println("As String :"+ formatter.format(date));  
}

Nebo samotným dotazem:

/* Setting up the connection, etc. - snipped for clarity */
String sql = "SELECT TO_CHAR(date_type, 'yyyy-mm-dd hh24:mi:ss') FROM emp";
ResultSet rs = psmt.executeQuery(sql);  
while (rs.next()) {  
    String dateString = rs.getString(1);  
    System.out.println("As String :" + dateString);      
}


  1. kde podmínka od varchar odděleného čárkou v mysql a codeigniter

  2. Příklady SYSDATE() – MySQL

  3. MYSQL - Co dělá STRAIGHT_JOIN v tomto kódu?

  4. Jak používat ST_Intersects v klauzuli WHERE