2016-04-08 2 views
0

У меня есть ошибка // нет такой таблицы: Pbook (код 1)нет такой таблицы: (код 1) Ошибка

в моем коде

private static final String TABLE_NAME = "Pbook"; 
private static final String _ID = "_id"; 
private static final String NAME = "name"; 
private static final String ADDRESS = "address"; 
private static final String NUMBER = "number"; 
private static final String HUMAN = "human"; 

private static final String CREATE_TABLE = 
     "CREATE TABLE IF NOT EXIST " + TABLE_NAME + " (" + 
       _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + 
       NAME + " TEXT," + 
       ADDRESS + " TEXT," + 
       NUMBER + " TEXT," + 
       HUMAN + " TEXT)"; 

public void onCreate(SQLiteDatabase db) { 
    db.execSQL(CREATE_TABLE); 

}

public void insert(String name, String address, String number, String human){ 
    SQLiteDatabase db = getWritableDatabase(); 
    db.execSQL("insert into " + TABLE_NAME + 
      " (name, address, number, human) values" + 
      "('" + name + 
      "','" + address + 
      "','" + number + 
      "','" + human +"');"); 
    db.close(); 
} 

, когда я используйте вставку() сделать ошибку, нет такой таблицы: (код 1)

, конечно, i db и использовать getWritableDatabase();

почему это ошибка?

+4

«СОЗДАТЬ ТАБЛИЦУ, ЕСЛИ НЕ СУЩЕСТВУЕТ ** S **» –

+0

, пожалуйста, разместите logcat –

+2

Возможно, это вызвано опечаткой. Я голосую, чтобы закрыть этот вопрос. –

ответ

1

Это опечатка ошибка. Он должен быть CREATE TABLE IF NOT EXISTS вместо CREATE TABLE IF NOT EXIST

private static final String CREATE_TABLE = 
    "CREATE TABLE IF NOT EXISTS " + TABLE_NAME + " (" + 
      _ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + 
      NAME + " TEXT," + 
      ADDRESS + " TEXT," + 
      NUMBER + " TEXT," + 
      HUMAN + " TEXT)"; 

деинсталляцию + переустановить приложение и все будет в порядке.

+3

Не просто переустановить, но и удалить + переустановить – laalto

0
String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_NAME + "(" 
      + KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT," 
      + KEY_NUM + " TEXT, "+ KEY_MAIL + " TEXT, "+ KEY_ADDR +" TEXT, " + HUMAN+ " TEXT " + ")"; 
    db.execSQL(CREATE_CONTACTS_TABLE); 

надеюсь, что это поможет .....

Смежные вопросы