2012-08-07 43 views
4

我使用SQLite.NET ORM包裝SQLite的上MonoTouch根據業務對象來創建一個數據庫。工作正常。的MonoTouch + SQLite的+ SQLite.Net ORM:全文索引

我想運行,從而創建一個全文虛擬表SQLite的full text indexing command。但SQLite.Net ORM不直接支持。有沒有辦法在MonoTouch上使用其他命令創建索引?

建立全文索引的SQL就是:

CREATE VIRTUAL TABLE "Term" USING FTS3 (
"Id" INTEGER PRIMARY KEY, 
"Word" integer, 
"Definition" TEXT 
); 

insert into Term(Id,Word,Definition) 
    Select Id,Word,Definition from SomeOtherTable; 

drop table SomeOtherTable; 

回答

1

我相信SQLite.NET不支持創建全文索引,但支持創建普通索引。

不管怎麼說,你可以嘗試通過執行任何自定義的SQL代碼:

<YOUR_SUBCLASS_OF_SQLiteConnection>.Execute(<YOUR_SQL_CODE>); 

例子:

public class LocalDatabase: SQLiteConnection 
{ 
    ... 
    public LocalDatabase (string path) : base(path) 
    { 
     ... 
     Execute("CREATE VIRTUAL TABLE \"MyTable\" USING FTS3 ..."); 
     ... 
    }  
    ... 
}