2011-09-11 35 views
2

我在執行正常的SELECT語句時遇到問題(也就是說,他們沒有設計要做的'搜索' - 我沒有使用MATCH)。我想要做的是查詢INTEGER列的所有行的表。但是,SELECT語句始終不返回任何行。我用SQLite瀏覽器檢查了數據庫,查詢應該可以工作。那就是:在SQLite FTS上的正常SELECT選擇

這裏的MAKE TABLE語句:

CREATE VIRTUAL TABLE FTS_journal USING fts3(journal_id INTEGER, journal_text_col TEXT) 

而這裏的SELECT:

SELECT journal_id FROM FTS_journal 

是否有一些與我運行一個「正常」的查詢通過虛擬表?我真的不能想到任何其他原因

編輯:我正在使用Android版本的SQLite,意思SQLite3。我知道它支持FTS正確...

如果有任何進一步的信息,我可以提供幫助,請告訴我,我會發布它。

+0

確認實際的CREATE TABLE語句*完全匹配您上面給出的那個。例如。 INTEGER不是INT。 – Tim

回答

1

你寫的東西應該可以工作。你是否100%肯定你已經在表格中插入了一些東西?你是否運行過插入語句,如果是的話,你確定它們是成功的嗎?

我測試你的報表,運行create語句,那麼下面的語句:

INSERT INTO FTS_journal(journal_id,journal_text_col)值(1, '測試');

...然後你的選擇語句,和sqlite返回1行(journal_id,值1),就像它應該。

+0

謝謝! - 問題實際上是在java-land中,我用光標做出了一個愚蠢的錯誤 – Prime

+0

你能解釋一下問題是什麼嗎? – Enigma