我正在使用Orientdb和Eclipse以及orientdb-client jar。我使用以下语句来读出消息:
List<ODocument> result = connection.command(
new OSQLSynchQuery<ODocument>(
"SELECT * FROM Message"))
.execute();
乍一看结果看起来是正确的,但后来我意识到我从DATTIME字段中读出的时间是错误的。 当我运行查询&#34;从Message&#34;中选择*时,locahost版本给我以下结果(只是其中的一部分): 当我从上面运行java片段时,结果如下:
对于格式化我使用SimpleDateFormat:
DateFormat formatter = new SimpleDateFormat("HH:mm:ss a");
String time = formatter.format(each.field("Time"));
那么为什么日期的小时不同(2小时)?这可能是时区问题吗?
答案 0 :(得分:3)
因为数据库会在数据库的时区中返回结果
您可以在Db->配置部分的工作室中看到它
更新时区的命令看起来像
alter database timezone GMT+6