[英]lotus notes search by date with Java api
我正在嘗試從Lotus Notes數據庫中按日期選擇記錄,並且在正確格式化日期時遇到了麻煩。
這是相關的代碼:
public void runNotes() {
Session s;
try {
s = NotesFactory.createSession((String)null, (String)null, "mypassword");
Database hkDB =
s.getDatabase("NBHDH001/YNM", "H\\DHH00001.nsf", false);
DocumentCollection docs = hkDB.search("[Date]>[2012/03/20]");
日期是記錄中的一個字段,當我查找記錄(使用FTSearch)時,日期以上述格式返回:[yyyy / mm / dd]。
搜索的參數是我在這里需要的。 即我應該放什么,而不是“[日期]> [2012/03/20]”
我嘗試使用Calendar和DateFormat進行各種構造,但它並沒有結合在一起......
有什么建議?
您應該刪除字段名稱上的方括號。 搜索方法需要一個Notes公式,就像您放入視圖選擇公式中一樣:
"Date > [03/20/2012]"
可能還需要日期為mm / dd / yyyy格式,但如果您在非美國語言環境中,我不是100%肯定。
你提到你一直在數據庫中進行全文搜索,所以絕對值得一提......如果數據庫實際上有一個全文索引,那么你可能要考慮使用NotesDatabase.FTSearch()方法而不是NotesDatabase.Search()。 對於大型數據庫,FTSearch方法會快得多。
FTSearch的語法與Search的語法不同。 您可以使用“FIELD Date> 03/20/2012”或“[Date]> 03/20/2012”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.