我正在使用 postgresql 数据库。我将值从 java 类插入到数据库中。我已将不带时区的数据类型时间字段声明为字符串。我不知道如何解析并将其发送到与数据类型匹配的数据库?我该怎么做?
public static void User(Form t)
{
String insertTableSQL = "INSERT INTO DBUSER"
+ "(USER_ID, USERNAME,CREATED_DATE) VALUES"
+ "(?,?,?)";
PreparedStatement ps = dbConnection.prepareStatement(insertTableSQL);
ps.setString(1, t.getUserID());
ps.setString(2, t.getuserName());
ps.setString(3, t.getTime());
ps.executeUpdate();
}
错误:错误:CREATED_DATE 是没有时区的时间,但表达式的类型是字符变化 提示:尝试转换表达式
最佳答案
尝试添加显式类型转换
改变
+ "(?,?,?)";
到
+ "(?,?, CAST (? AS time))";
关于java - 错误 : the <column-name> is of time without time zone but expression is of type character varying,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22037534/