問題:
我在嘗試執行以下操作時遇到錯誤將帶有java.util.Date 欄位的記錄插入資料庫。該錯誤指出「日期時間值的字串表示形式的語法不正確。」如何解決這個問題?
解決方案:
要將java.util.Date 欄位插入資料庫,您應該先考慮使用物件關係映射( ORM)解決方案(例如Hibernate)來抽象SQL 查詢。但是,如果這不可行,您可以使用以下步驟:
範例:
java.util.Date myDate = new java.util.Date("10/10/2009"); java.sql.Date sqlDate = new java.sql.Date(myDate.getTime()); Connection conn = ...; // Obtain the database connection String sql = "INSERT INTO USERS (USER_ID, FIRST_NAME, LAST_NAME, SEX, DATE) VALUES (?, ?, ?, ?, ?);"; PreparedStatement stmt = conn.prepareStatement(sql); stmt.setString(1, userId); stmt.setString(2, myUser.GetFirstName()); stmt.setString(3, myUser.GetLastName()); stmt.setString(4, myUser.GetSex()); stmt.setDate(5, sqlDate); stmt.executeUpdate(); // Execute the SQL query
這個方法會自動轉義字串並防止 SQL 注入漏洞.
以上是如何正確地將 java.util.Date 欄位插入資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!