Reputation: 109
i have error // no such table: Pbook (code 1)
in my code
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();
}
when i use insert() it make error, no such table: (code 1)
surely, i db, and use getWritableDatabase();
why it make error?
Upvotes: 0
Views: 83
Reputation: 35549
It's Typo error. It should be CREATE TABLE IF NOT EXISTS instead of 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)";
uninstall+reinstall your application and everything will be fine.
Upvotes: 1
Reputation: 99
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);
hope this will help.....
Upvotes: 0