java - cast - mysql datetime update query




SQLを使用してデータベースに現在の日付と時刻を挿入する方法 (6)

次のコードを使用しましたが、SQLのDateTimeフィールドは次のように表されています。

2005-04-08 00:00:00

私も時間が欲しいです。 何を変更すればいいですか?

これが私のコードです。

// 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);

SQLの日付を設定するのではなく、setDate(utilDate)を使用してみてください。 SQLでは、日付と時刻は異なるデータ型です。


SQL関数now()を使用してください。

INSERT INTO table date_field VALUES(NOW());

これを試して:

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())"');");

タイムスタンプはデータ時間に適した形式であるため、 setDateの代わりにsetTimestampを使用してみてください。


私は、Javaで現在時刻を取得することに煩わされることはありません。データベースに任せてください。

String sql = "insert into some_table (some_column, timestamp_column) values (?, current_timestamp)";
PreparedStatement stmt = connection.prepareStatement(sql);
stmt.setInt(1, 42);
stmt.executeUpdate();

私は次のようにしました:

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();

あなたが仕えることを願っています





sql