所以我附加了多个数据库,然后创建了一个 TEMP VIEW,它结合了来自各种数据库的所有 virtualTables。
theDatabase.execSQL("CREATE TEMP VIEW virtualView AS SELECT * FROM Virtual_Sites UNION SELECT * FROM db1.Virtual_Sites UNION SELECT * FROM db2.Virtual_Sites");
是否可以在此 VIEW 上使用 MATCH 查询?
theDatabase.rawQuery(SELECT * FROM virtualView WHERE all_text MATCH 21033, null)
我目前收到此错误。
sqlite returned: error code = 1, msg = statement aborts at 46: [SELECT * FROM virtualView WHERE all_text MATCH 21033] unable to use function MATCH in the requested context, db=xxx
exception: SQL logic error or missing database; query: SELECT * FROM virtualView WHERE all_text MATCH 21033
我读过以这种方式创建 VIEW 不会继承基础表索引,这就是我无法进行 MATCH 的原因吗?如果是这样,有什么解决方法吗?
谢谢