我是PostgreSQL的新手。我正在尝试使用JDBC将数据插入表中。
要插入的列值之一是以下类型。
2014-04-04T19:56:42.784Z(请注意字符串中的T和Z)。
我首先使用timestamp
作为相应列的数据类型。但是,我收到以下错误:
org.postgresql.util.PSQLException:错误:语法错误在“T19”或附近
然后我将其更改为character(40)
可能是我的格式错误。但是,仍然会出现同样的错误。
稍后,当我从字符串中删除T和Z时,错误停止了。还请注意我也认为结肠可能是问题所在。但是,通过我的测试并非如此。
Java代码段
String line = 1,2014-04-04T19:56:42.784Z,456,0
String[] tempStr = strLine.split(",");
String sql = "INSERT INTO Table (A , TimeOfSess , B , C )"
+ "VALUES("+tempStr[0]+","+tempStr[1]+","+tempStr[2]+","+tempStr[3]+")";
stmt.executeUpdate(sql);
请注意我使用TimeOfSess
作为character(40)
。对于我的分析,将时间存储为时间并不重要。性格也会奏效。所以我在这里轻松一点。