問題タブ [fts4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
6466 参照

python - Windowsでpython2.7を使用してFTS3/FTS4をセットアップする方法

FTS3 / FTS4は、デフォルトではPythonでは機能しません(最大2.7)。エラーが発生します:

また

これはどのように解決できますか?

0 投票する
1 に答える
2450 参照

sqlite - System.Data.Sqlite と FTS4

次のような全文検索構文を使用してクエリを作成すると、次のようになります。

クエリ結果は常に 0 行を返しますか?

VBnet と sqlite.org の最新の Ado.net プロバイダーを使用しています

問題は、外部ツールを使用してクエリを実行すると、うまく機能することです (sqlite 3.7.9 を使用)。

手がかりはありますか?前もって感謝します

0 投票する
1 に答える
695 参照

android - そのようなモジュールはありません: fts4aux- fts4aux を使用して作成された sqlite 仮想テーブルのクエリ中にエラーが発生しました

私は単語を収集しようとしており、fts4aux テーブルからセットを構築して AutocCompleteTextView にフィードしています。しかし、fts4aux を使用して作成された仮想テーブルへのアクセスに問題があります

仮想テーブル「ProductVirtual」があります。

これから、「product_terms」という名前の fts4aux テーブルを作成しました。

これが私のクエリです

product_terms から用語を選択

db コンソールから sqlite db に対してこのクエリを実行すると、結果を取得できます。

しかし、Android アプリから同じクエリを使用すると、次のエラーがスローされます

I/SqliteDatabaseCpp(26555): sqlite が返されました: エラー コード = 1、メッセージ = そのようなモジュールはありません: fts4aux、db=/data/data/com.product/databases/product_device.db

同時に、問題なく Android アプリから fts4 仮想テーブルをクエリできます。したがって、fts4が有効になっていると確信しています。

しかし、唯一の問題は「fts4aux」テーブルの使用です。どうすればこれを克服できますか? どこかで「fts4aux」を個別に有効にする必要がありますか?

あなたの考えを投稿してください。ありがとう!

0 投票する
1 に答える
1149 参照

android - 特殊文字を使用した SQLite FTS4 検索

FTS4 仮想テーブルを使用して SQLite データベースでデータを検索する Android アプリがあります。正常に動作しますが、テーブル内のデータに特殊文字 ('á'、'é'、'í'、'ó'、'ú'、'ñ' など) が含まれている場合、SQLite MATCH 関数は結果を返しません。私はこの時点で迷っています。ありがとう。

0 投票する
1 に答える
2665 参照

sqlite - テーブルの結合: 1 つは通常のテーブルで、もう 1 つは FTS 仮想テーブルです。

通常のテーブルと FTS テーブルを結合するのは良い考えですか? FTS テーブルの本来のパフォーマンスに影響するかどうか知りたいですか? もちろん、クエリは間違いなく MATCH 句を使用しています。

0 投票する
1 に答える
229 参照

sql - SQL FTS と比較ステートメント

ショートストーリー。SQLite データベースと通信する必要があるプロジェクトに取り組んでいます。そして、いくつかの問題があります。

nodeId列とnodeName列を持つ 1 つの FTS テーブルがあります。nodeNames に何らかのテキスト パターンが含まれているすべての nodeIds を選択する必要があります。たとえば、内部に「Donald」が含まれるすべてのノード名。このスレッドで同様のことが議論されました。ポイントは、 CONTAINSキーワードを使用できないことです。代わりにMATCHを使用します。そして、ここに問題があります。この「Donald」という文字列をどのように「組み立てる」必要がありますか? 「*」または「%」文字で? これが私のクエリです:

SELECT文に多重比較を書いてもいいですか?私はこのようなことを意味します:

あまり混乱しないことを願っています。前もって感謝します!

0 投票する
1 に答える
619 参照

python - sqlite の FTS スニペット関数で html エスケープを処理する

&<および>文字を含む可能性のあるドキュメントを保存するために、sqlite の全文検索サポートを使用しています。スニペット機能を使用して html 結果ページの一致を強調表示するつもりでしたが、マーカーを挿入する前にテキストをエスケープする明確な方法がわかりません。amp保存する前にテキストをエスケープしたくltありませんgt

私が考えることができる最も簡単な回避策は、ページを保存する前にエスケープ&amp;し、最初にエスケープ&lt;しないカスタムトークナイザーを使用すること&gt;です.

ただし...デフォルトの forsnippet(foo)<b>andを使用するため</b>、これは非常に一般的なユースケースのようであり、Cで車輪を再発明することなくこれを処理する方法が必要であると確信しています。エレガントなソリューション?

0 投票する
1 に答える
1048 参照

sqlite - SQLite 全文検索 (FTS4) が複合検索で山かっこを異なる方法で処理するのはなぜですか?

FTS4 を使用した SQLite データベースがあります。次の形式のメッセージ ID を持つ電子メールを保存するために使用されます。

FTS MATCH 構文を使用してメッセージを検索すると、次の結果が得られます。

これにより、正しい行が返されます。しかし、複数のメールを検索しようとすると、空の応答が返されます。

奇妙なことに、山括弧文字なしで検索できます。これは両方の行を返します。

これは、格納された列に山かっこが存在する場合でもです。これらが SQLite の特殊文字であるという言及は見つかりません。「OR」がなければ、単一用語検索は正常に機能します。

複合検索でこれらの文字の扱いが異なるのはなぜですか?

0 投票する
3 に答える
2692 参照

sqlite - SQLiteFTSの例が機能しない

最新のSQLite3.7.15.2シェル(Win32)をダウンロードし、http://sqlite.org/fts3.html#section_3に記述されているとおりにFTSの例の1つを実行しようとしました

しかし、最後のコメントにもかかわらず、SELECTは空のセットになりました。それはSQLiteのバグですか、それとも単に古いドキュメントですか?(そしてそのための正しい構文は何ですか?)

私にとって最も重要なのはそのクエリです

どちらも機能せず、アプリで必要なそのタイプのクエリ。それが機能するようにそれを書く他の方法はありますか?

0 投票する
0 に答える
175 参照

android - 検索クエリを使用すると、Android FTS4 データベースが空のカーソルを返す

私のアプリケーションでは、連絡先情報を格納する FTS4 データベースを作成しました。アプリケーションは、ユーザーが名前に基づいて連絡先を検索できるようにします。ユーザーが検索クエリを入力すると、そのクエリがデータベース内のエントリと比較され、一致したエントリがリストに表示されます。エントリのいずれかをクリックするとエラーが発生し、デバッグしてカーソルが空であることを確認しました。

問題を引き起こした可能性が最も高いデータベースクラスの一部を次に示します。

ここに私の検索活動があります:

エラー: