android.database.sqlite.SQLiteException: контакты таблицы не имеют столбца с именем uid

-4

это мой код:

public void onCreate(SQLiteDatabase db) 
{
String CREATE_CONTACTS_TABLE = "CREATE TABLE IF NOT EXISTS"
+ TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," // and auto increment will be handled with primary key
+ KEY_UID + " TEXT,"
+ KEY_NAME + " TEXT,"
+ KEY_PH_NO + " TEXT,"
+ KEY_Comapny + " TEXT,"
+ KEY_email + " TEXT,"
+ KEY_country + " TEXT,"
+ KEY_street + " TEXT,"
+ KEY_city + " TEXT,"+ KEY_state + " TEXT,"
+ KEY_zip + " TEXT);";
db.execSQL(CREATE_CONTACTS_TABLE);
}

Я получаю ниже исключения:

: E/SQLiteDatabase(2645): android.database.sqlite.SQLiteException: table contacts has no column named uid (code 1): , while compiling: INSERT INTO contacts(uid,zip,phone_number,email,company_name,street,name,state,city,country) VALUES (?,?,?,?,?,?,?,?,?,?)

Пожалуйста помоги. благодаря

спросил(а) 2014-05-17T12:55:00+04:00 6 лет, 6 месяцев назад
0
71

Там синтаксическая ошибка в CREATE TABLE поэтому, очевидно, она не была запущена. Вам нужно пространство между EXISTS и именем таблицы.

Поскольку onCreate() с вашим текущим SQL не запущен, у вас есть более старая версия вашего файла базы данных. Удалите приложение, чтобы удалить его, и снова запустите onCreate(). См. Когда выполняется SQLiteOpenHelper onCreate()/onUpgrade()? для большего.

ответил(а) 2014-05-17T12:59:00+04:00 6 лет, 6 месяцев назад
59

Замените этот запрос:

String CREATE_CONTACTS_TABLE = "CREATE TABLE IF NOT EXISTS" 
+ TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," // and auto increment will be handled with primary key
+ KEY_UID + " TEXT,"
+ KEY_NAME + " TEXT,"
+ KEY_PH_NO + " TEXT,"
+ KEY_Comapny + " TEXT,"
+ KEY_email + " TEXT,"
+ KEY_country + " TEXT,"
+ KEY_street + " TEXT,"
+ KEY_city + " TEXT,"+ KEY_state + " TEXT,"
+ KEY_zip + " TEXT);";
db.execSQL(CREATE_CONTACTS_TABLE);

с этим:

String CREATE_CONTACTS_TABLE = "CREATE TABLE IF NOT EXISTS " 
+ TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," // and auto increment will be handled with primary key
+ KEY_UID + " TEXT,"
+ KEY_NAME + " TEXT,"
+ KEY_PH_NO + " TEXT,"
+ KEY_Comapny + " TEXT,"
+ KEY_email + " TEXT,"
+ KEY_country + " TEXT,"
+ KEY_street + " TEXT,"
+ KEY_city + " TEXT,"+ KEY_state + " TEXT,"
+ KEY_zip + " TEXT);";
db.execSQL(CREATE_CONTACTS_TABLE);

Примечание. В запросе CREATE TABLE есть синтаксическая ошибка, вам нужно пространство между EXISTS и TABLE_CONTACTS.

ответил(а) 2014-05-17T13:06:00+04:00 6 лет, 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема