我花了一些時間來嘗試解決這個問題,但我不知道我的sql創建條目中的問題在哪裏..Android SQLiteException:接近「(」:語法錯誤(代碼1):
錯誤:
android.database.sqlite.SQLiteException: near "(": syntax error (code 1): , while compiling: CREATE VIRTUAL TABLE CommerceName (_id TEXT PRIMARY KEY,id INTEGER,name TEXT,category TEXT,imageref TEXT)
在此先感謝
CODE:
public static final String SQL_CREATE_ENTRIES =
"CREATE VIRTUAL TABLE " + CommerceSearchReaderDbHelper.CommerceNameSearchEntry.TABLE_NAME + " (" +
CommerceSearchReaderDbHelper.CommerceNameSearchEntry._ID + TEXT_TYPE +" PRIMARY KEY," +
CommerceSearchReaderDbHelper.CommerceNameSearchEntry.COLUMN_ID + INTEGER_TYPE + COMMA_SEP +
CommerceSearchReaderDbHelper.CommerceNameSearchEntry.COLUMN_NAME + TEXT_TYPE + COMMA_SEP +
CommerceSearchReaderDbHelper.CommerceNameSearchEntry.COLUMN_CATEGORY+ TEXT_TYPE + COMMA_SEP +
CommerceSearchReaderDbHelper.CommerceNameSearchEntry.COLUMN_IMAGEREF + TEXT_TYPE +
")";
public static final String SQL_DELETE_ENTRIES =
"DROP TABLE IF EXISTS " + CommerceSearchReaderDbHelper.CommerceNameSearchEntry.TABLE_NAME;
public static abstract class CommerceNameSearchEntry implements BaseColumns {
public static final String TABLE_NAME = "CommerceName";
public static final String COLUMN_ID = SearchManager.SUGGEST_COLUMN_INTENT_EXTRA_DATA;
public static final String COLUMN_NAME = SearchManager.SUGGEST_COLUMN_TEXT_1;
public static final String COLUMN_CATEGORY = SearchManager.SUGGEST_COLUMN_TEXT_2;
public static final String COLUMN_IMAGEREF = SearchManager.SUGGEST_COLUMN_ICON_1;
}
你是什麼意思有:缺少「使用MODULE_NAME –
不知道如何實現它在我代碼... –
虛擬表需要一個後臺實現,因爲你已經指定了Android標記,所以我實際上假設你不打算創建一個虛擬表(因爲這是相對複雜的),更有可能你打算創建一個常規表。我將更新答案。 – Dave