Buscar en toda la base de datos SQLite utilizando FTS3 / FTS4?
Tengo una base de datos sqlite que contiene gran cantidad de contenido html que se muestra utilizando una webview. Ahora quiero agregar funcionalidad de búsqueda a mi aplicación. Tengo dos tablas una para las categorías y la otra para las subcategorías. Las siguientes son las consultas de creación.
String CREATE_SUBCATEGORY_TABLE = "CREATE VIRTUAL TABLE " + TABLE_SUBCATEGORY_LIST + " USING fts3(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," + KEY_NAME + " TEXT," + KEY_DESC + " TEXT," + KEY_CATEGORY_ID + " INTEGER," + KEY_CONTENT1 + " TEXT," + KEY_CONTENTTYPE1 + " TEXT," + KEY_CONTENT2 + " TEXT," + KEY_CONTENTTYPE2 + " TEXT," + KEY_CONTENT3 + " TEXT," + KEY_CONTENTTYPE3 + " TEXT," + KEY_CONTENT4 + " TEXT," + KEY_CONTENTTYPE4 + " TEXT," + KEY_CONTENT5 + " TEXT," + KEY_CONTENTTYPE5 + " TEXT," + KEY_CONTENT6 + " TEXT," + KEY_CONTENTTYPE6 + " TEXT," + KEY_CONTENT7 + " TEXT," + KEY_CONTENTTYPE7 + " TEXT," + KEY_CONTENT8 + " TEXT," + KEY_CONTENTTYPE8 + " TEXT," + KEY_CONTENT9 + " TEXT," + KEY_CONTENTTYPE9 + " TEXT," + KEY_CONTENT10 + " TEXT," + KEY_CONTENTTYPE10 + " TEXT," + KEY_CONTENT11 + " TEXT," + KEY_CONTENTTYPE11 + " TEXT," + KEY_CONTENT12 + " TEXT," + KEY_CONTENTTYPE12 + " TEXT," + KEY_CONTENT13 + " TEXT," + KEY_CONTENTTYPE13 + " TEXT," + KEY_CONTENT14 + " TEXT," + KEY_CONTENTTYPE14 + " TEXT," + KEY_CONTENT15 + " TEXT," + KEY_CONTENTTYPE15 + " TEXT," + KEY_ORDERID + " INTEGER," + KEY_STATUS + " TEXT," + KEY_UPDATED + " TEXT, FOREIGN KEY (" + KEY_CATEGORY_ID + ") REFERENCES " + CAT_TABLE + "(" + KEY_CATEGORY_ID + ")" + ")"; String CREATE_CATEGORYLIST_TABLE = "CREATE VIRTUAL TABLE " + CAT_TABLE + " USING fts3(" + KEY_CATEGORY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL," + KEY_CATNAME + " TEXT," + KEY_CATDESC + " TEXT," + KEY_STATUS + " TEXT," + KEY_ORDERID + " INTEGER " + ")";
Así que ahora todas mis mesas una mesa virtual. Ahora lo que debería ser mi consulta de búsqueda como. He creado la siguiente consulta de búsqueda, pero no estoy seguro de si funcionará.
- Cómo solucionar el error "HeapWorker is wedged" en Android?
- Android desventajas de no cerrar el cursor
- Android Sqlite IN, sin sintaxis
- Calcular la distancia entre dos puntos directamente en SQLite
- Cómo personalizar FTS tokenizer en Android
public Cursor searchByInputText(String inputText) throws SQLException { SQLiteDatabase myDb = this.getReadableDatabase(); String[] selectionArgs = { inputText }; String query = "SELECT docid as _id, " + KEY_CATNAME +" ,"+KEY_CATDESC + " from " + CAT_TABLE + " where " + CAT_TABLE + " MATCH ? '," + selectionArgs + "';"; Cursor mCursor = myDb.rawQuery(query,null); if (mCursor != null) { mCursor.moveToFirst(); } return mCursor;
}
Quiero buscar primero dentro de la tabla de categorías para el término que se busca en la tabla de subcategoría de búsqueda.
- SQLiteException cerca de "<" mientras se borra la consulta
- Cambio de cursor en CursorAdapter
- Copia de seguridad y restauración de la base de datos SQLite a sdcard
- Almacenamiento y recuperación de datos no ingleses en la base de datos sqlite en android
- Cursor while loop devuelve cada valor pero el último
- Insertar o actualizar en SQlite y Android utilizando la base de datos.query ();
- ListView Casilla de verificación Guardar estado
- Cómo eliminar miles de registros de sqlite android
- Administrador de SDK de Visual Studio 2013 Android no funciona
- W / unknown: ViewManagerPropertyUpdater: No se pudo encontrar el generador generado para la clase com.facebook.react. *