簡體   English   中英

SQLite檢查表是否為FTS4

[英]SQLite Check if Table is FTS4

我正在開發一個使用帶有FTS4表的SQLite數據庫的Android應用。

在應用程序中,有一個選項可以從外部存儲器導入數據庫。 需要檢查該數據庫以確認它具有所有正確的表和列。 我已經有執行此操作的代碼,但是我不知道如何檢查表是否“正常”或FTS4。 稍后將導致對帶有MATCH查詢產生問題。

我能想到的檢查表是否為FTS4的唯一方法是使用MATCH進行隨機查詢,如果出現錯誤,是因為它們不是。

有沒有像使用命令那樣更好的方法呢?

僅在表具有至少一行的情況下,在普通表上使用MATCH才會導致錯誤消息。

FTS表具有一個虛擬列,其名稱與表名稱相同。 因此,您可以嘗試使用類似SELECT MyTable FROM MyTable的查詢。

您可以檢查影子表MyTable_contentMyTable_segdir等)是否存在。

您可以檢查系統表中的CREATE TABLE語句: SELECT sql FROM sqlite_master WHERE type = 'table' AND name = 'MyTable';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM