我想使用Solr的DataImportHandler從Oracle數據庫索引一些文件,並且一切正常工作正常閱讀Oracle日期列到我的文檔的異常。從Oracle日期獲取正確的時間在Solr DataImportHandler
我有場定義爲
<field name="release_date" type="date" indexed="true" stored="true" multiValued="false"/>
我第一次嘗試這樣做,我DataImportHandler日期列的只是一個基本的select語句我Solr模式,但所有的日期正在用不正確的時間值索引。舉例來說,這是在DB爲2004年1月12日,日期上午9點28分(美國東部時間)被索引爲:
<date name="release_date">2004-01-12T05:00:00Z</date>
所有的日期值有正確的一天,但他們都有T05 :00:00Z作爲他們的時間。對於發生的事情我最好的猜測是它從午夜時間讀取數據庫的時間並將其轉換爲UTC。如果是這種情況,我希望正確的值讀取T14:28:00Z。
爲什麼它不拾取數據庫列的時間部分?我知道DIH附帶有一個transformer for dates,但我不完全清楚它應該如何工作。我也試過
<field column="RELEASE_DATE" name="release_date" dateTimeFormat="yyyy-MM-dd'T'hh:mm:ss'Z'" />
在DIH中,但那似乎沒有改變任何東西。
Oracle中該字段的類型是什麼? – 2012-04-11 18:23:49
Oracle中字段的數據類型是Date。 – dwc86 2012-04-11 18:31:10
什麼是nls_date_format設置爲?另外,如果你只是'從雙重選擇sysdate',你會得到什麼? – 2012-04-11 20:43:07