2015-04-15 37 views
2

我使用Orientdb和Eclipse以及orientdb-client jar。我用下面的語句讀出消息:Orientdb讀出錯誤的時間

List<ODocument> result = connection.command(
       new OSQLSynchQuery<ODocument>(
         "SELECT * FROM Message")) 
       .execute(); 

乍一看結果看起來正確的,但後來我意識到,我從DATTIME場中讀出的時間是錯誤的。 當我運行查詢「選擇從郵件*」,該的locahost版本給我的結果如下(只是其中的一部分): enter image description here 當我運行Java代碼從上面,結果是這樣的: enter image description here

對於格式化我使用的SimpleDateFormat:

DateFormat formatter = new SimpleDateFormat("HH:mm:ss a"); 
String time = formatter.format(each.field("Time")); 

那麼,爲什麼是不同的(2小時)的日期時間嗎?它可能是一個時區問題?

回答

3

這是因爲數據庫將結果返回到數據庫的時區。
你可以在工作室的Db->配置部分看到它。
命令更新時區看起來像 alter database timezone GMT+6

+0

對我來說,解決方案是GMT + 2。謝謝! – Akkusativobjekt