Java向MySQL插入时间类型字段
数据库字段设置如下
遇到的问题
在搜索怎样向数据库中插入时间字段的时候,试了试网上的几种方法均报错
statement.execute("insert into time (id,timestamp) values (11,"+new Timestamp(new Date().getTime())+")");
报错:Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '10:58:53.306)' at line 1
statement.execute("insert into time (id,timestamp) values (11,"+statement.execute("insert into time (id,timestamp) values (11,"+new java.sql.Date(new Date().getTime())+")");+")");
报错:Exception in thread "main" com.mysql.jdbc.MysqlDataTruncation: Data truncation: Incorrect datetime value: '1986' for column 'timestamp' at row 1
换个方法向数据库中插入时间
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmmss");
String time = LocalDateTime.now().format(formatter);
statement.execute("insert into time (id,timestamp) values (11," + time + ")");