| 

.NET C# Java Javascript Exception

2
Hallo zusammen,
zur SQLITE-Originaltabelle habe ich eine FTS- Abfrage, bei der ich weitere Spalten auslesen will, wobei dies nur für 4 Felder möglich ist.
Meine Tabelle erstelle ich so:
private static final String FTS_TABLE_CREATE =
"CREATE VIRTUAL TABLE " + FTS_VIRTUAL_TABLE + " USING fts4("
+ FTS_COLUMN_0 +","
+ FTS_COLUMN_1 +","
+ FTS_COLUMN_2 +","
+ FTS_COLUMN_3
// + FTS_COLUMN_4
+ " UNIQUE (" + FTS_COLUMN_0 + "));";

und so gefüllt:
private static final String SQL_fts = "INSERT INTO " + FTS_VIRTUAL_TABLE +  "("
+ FTS_COLUMN_0 +","
+ FTS_COLUMN_1 +","
+ FTS_COLUMN_2 +","
+ FTS_COLUMN_3
// + FTS_COLUMN_4
+ ")" +
"SELECT _id, origCol_0, origCol_1, origCol_ 2, origCol_ 3 FROM orig_tabelle ";

und so abgefragt:
public Cursor searchByInputText(String inputText) throws SQLException {
String query = "SELECT docid as _id,"
+ FTS_COLUMN_0 +","
+ FTS_COLUMN_1 +","
+ FTS_COLUMN_2 +","
+ FTS_COLUMN_3
// + FTS_COLUMN_4
+ " FROM " + FTS_VIRTUAL_TABLE +
" WHERE " + FTS_COLUMN_0 +
" MATCH '" + inputText + "' ";
Cursor myCursor = mDb.rawQuery(query,null);
if (myCursor != null) {
myCursor.moveToFirst();
}
return myCursor;
}

bei der 5. Spalte kommt die Fehlermeldung:
no such column: fts_spalte_5(=Spaltenname)
zum Testen lese ich die Felder über eine do while Schleife in ein TextView ein.
Alles funktioniert, bis zur 4. Spalte einwandfrei.
Was ist die Ursache - ich komme nicht dahinter - und wie vor allem kann ich weitere Spalten 5, 6, . . . ausgeben ?
Kann mir jemand helfen ?
Danke !
News:
28.05.2020
Lukos 37 5