K m.k
K m.k

Reputation: 109

no such table:(code 1) error

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

Answers (2)

Ravi
Ravi

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

Shellz
Shellz

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

Related Questions