J'ai utilisé le code suivant, mais le champ DateTime dans SQL est représenté par:
2005-04-08 00:00:00
Je veux avoir le temps aussi. que devrais-je changer?
Voici mon code ci-dessous:
// Get the system date and time.
Java.util.Date utilDate = new Date();
// Convert it to Java.sql.Date
Java.sql.Date date = new Java.sql.Date(utilDate.getTime());
...
...
...
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setDate(1, date);
Essayez d'utiliser setTimestamp au lieu de setDate , car un horodatage est le format préféré pour data et time.
vous pouvez définir Timestamp import Java.sql.Timestamp;
stmt.setTimestamp(1, new Timestamp(System.currentTimeMillis()));
au lieu de
stmt.setDate(1, date);
o/p sera: 2014-05-16 08: 34: 52.977
définissez votre base de données --column en tant qu'horodatage.
Essaye ça:
Connection con;
Statement stmt;
con = DriverManager.getConnection(url, username, password);
stmt = con.createStatement();
stmt.executeUpdate("INSERT INTO MYTABLE(time) " +
"VALUES ('" + new Java.sql.Date(System.CurrentTimeMillis())"');");
Je ne voudrais pas récupérer l'heure actuelle en Java, laissez simplement la base de données faire le travail:
String sql = "insert into some_table (some_column, timestamp_column) values (?, current_timestamp)";
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setInt(1, 42);
stmt.executeUpdate();
Utilisez la fonction sql now ().
INSERT INTO table date_field VALUES(NOW());
J'ai fait comme suit:
con = new BDConesion(); //Conexion with de DB
Connection cn = con.conexion()
PreparedStatement st = null;
st = cn.prepareStatement("INSERT INTO TABLE (Id,Fecha,contendido) VALUES(?,?,?)");
st.setString(1,String.valueOf(key)); //convert the int to string
st.setTimestamp(2, new Timestamp(System.currentTimeMillis()));
st.setString(3,Cont);//Cont it is a varible string
st.executeUpdate();
J'espère que tu sers
Essayez d’utiliser setDate (utilDate) au lieu de définir une date SQL. En SQL, la date et l’heure sont des types de données différents.