我對機器人開發非常陌生,但我正在研究一些SQL。我有它擴展了SQLOpenDatabaseHelper並在onCreate()方法的類我執行此:Android SQL沒有這樣的表?
public static final String CREATE_DB = "CREATE TABLE " + TABLE_VOCAB_INFO
+ "(" + COLUMN_NAME + " TEXT NOT NULL PRIMARY KEY," + COLUMN_URL
+ " TEXT NOT NULL," + COLUMN_DOWNLOADED + "TEXT NOT NULL);";
然而,當我嘗試的東西添加到數據庫中,像這樣:
//Adding method
ContentValues cv = new ContentValues();
cv.put(COLUMN_NAME, "item " + i);
cv.put(COLUMN_URL, "random url");
cv.put(COLUMN_DOWNLOADED, "true");
open();
database.insert(TABLE_VOCAB_INFO, null, cv);
我得到的錯誤:
(1) no such table: vocab_info
我該如何解決這個問題?
編輯:更多信息。
我創建的數據庫在助手的onCreate()方法是這樣的:
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL(CREATE_DB);
} catch (SQLiteException e) {
System.out.println("Error with creation");
}
}
我使用添加方法類似這樣的
public void onClick(View viewSelected) {
switch (viewSelected.getId()) {
case R.id.bDownload:
DatabaseManipulator dm = new DatabaseManipulator(this);
dm.open();
dm.addList(null);
dm.addList(null);
dm.addList(null);
dm.addList(null);
dm.addList(null);
for (VocabList list : dm.getAllLists()) {
System.out.println(list.getName());
}
dm.close();
break;
感謝訪問數據庫提前
你能展示更多代碼嗎?例如,您如何從數據庫讀取數據(因爲我假設在讀取數據期間出現此錯誤)? –
您還需要在列名和v型之間放置空格'COLUMN_DOWNLOADED +「TEXT NOT NULL);」;' –
不,這個錯誤出現在我輸入的代碼中。 – NightStrider