我有这个代码,但它不起作用。我有错误消息:
"com.mysql.jdbc.MysqlDataTruncation:数据截断:不正确的日期时间值:第1行列'Datum_zalozeni‘的’“
pstmt = conn.prepareStatement(INSERT);
Timestamp ts = u.getDatum_zalozeni();
System.out.println(ts);
pstmt.setTimestamp(1, ts);
pstmt.setInt(2, u.getId_klient());
pstmt.executeUpdate();我的数据库是:
CREATE TABLE Ucet
(
Id_Uctu Int NOT NULL auto_increment primary key,
Datum_zalozeni Timestamp NOT NULL,
Id_klient Int NOT NULL
)
;错误在哪里?我认为代码是正确的。
发布于 2015-04-27 07:53:36
我有一个代码来生成系统时间戳。它将0设置为979。看一看。
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class TimestampTest
{
public static void main(String[] args)
{
try
{
System.out.println("System Date: " + generateTimestamp("yyyy-MM-dd HH:mm:ss"));
}
catch (Exception e)
{
e.printStackTrace();
}
}
public static Timestamp generateTimestamp(String format)
{
Timestamp timestamp = null;
try
{
SimpleDateFormat dateFormat = new SimpleDateFormat(format);
Date date = dateFormat.parse(generateDate(format));
timestamp = new Timestamp(date.getTime());
}
catch (ParseException e)
{
e.printStackTrace();
}
return timestamp;
}
public static String generateDate(String format)
{
Date date = Calendar.getInstance().getTime();
DateFormat dateFormat = new SimpleDateFormat(format);
return (dateFormat.format(date));
}
}发布于 2015-04-25 11:46:28
MySQL通常接受“2013-12-06 14:24:34”格式的时间戳。如果您共享要插入到数据库中的确切值,这将是有帮助的。
Timestamp ts = u.getDatum_zalozeni();
System.out.println(ts);
pstmt.setTimestamp(1, ts);什么是T?
https://stackoverflow.com/questions/29864634
复制相似问题