我在Grails和MySql中遇到Timestamp
数据类型的小问题。
我正在尝试在Grails中运行“插入”查询以在表中插入日期时间戳(sql DB)
sql.execute("insert into table_one (no, identity, user, last_updated) "
+ " values((select max(no)+1 from table_one),"
+ "'" + p.identity + "','" + p.user_id + "','" + "sysdate" + "')")
但它引发了一个错误说:
java.sql.SQLException: ORA-01858: a non-numeric character was found where a numeric was expected
在java时间戳中导致“ 2013-10-28 15:27:20.394 ”格式。 在Sql时间戳中预期“ 10/28/2013 15:27:20.PM ”格式。
我使用了SimpleDateFormat
但它返回了我不想要的字符串。即使将生成的字符串解析为Timestamp
,也会返回相同的格式。
任何人都可以分享你的想法。
答案 0 :(得分:0)
您可以尝试在插入之前将sysdate转换为mysql格式。
您可以尝试将“sysdate
”替换为“str_to_date(sysdate,'%y-%m-%d')
”,然后尝试