2013-02-10 4 views
0

Я начинаю с android и пытаюсь создать базу данных. с одной таблицей и тремя функциями добавлять, удалять, обновлять и извлекать.Android, SQLite .... первичный ключ вставлен как null

Когда я вставляю элемент в базу данных, первичному ключу будет присваиваться число, которое увеличивается каждый раз ... но оно вставляется в базу данных как null!

поэтому я не смог обновить и удалить записи, потому что мне нужен идентификатор. , а для получения результата работает отлично, за исключением id, он равен нулю.

здесь схема

private static final int DATABASE_VERSION = 2; 
private static final String DATABASE_NAME= "alarmapp"; 
private static final String CREATE_alarm= "CREATE TABLE alarm" + 
     " (Aid integer PRIMARY KEY NOT NULL AUTOINCREMENT," + 
     "message varchar(100)," + 
     "date varchar(100));"; 

и вот код вставки:

 // culums 
     private static final String AI = "Aid"; 
     private static final String Message= "message"; 
     private static final String Date = "date"; 


     //tables 
     private static final String TABLE_NAME= "alarm"; 


    private Context context; 
     private DatabaseHelper dbhelper; 
     private SQLiteDatabase database; 

     public long add(String message, String date){ 
    ContentValues values= new ContentValues(); 

    values.put(Message,message); 
    values.put(Date, date); 

    return database.insert(TABLE_NAME, null,values); 
      } 

ответ

4

Заканчивать по следующей ссылке: http://www.androidph.com/2012/01/android-sqlite-primary-key-auto.html

+0

ссылка не полезно, как мой код, как это :) спасибо – proG

+0

@proG ваш 'цельный PRIMARY KEY NOT NULL AUTOINCREMENT' странный (sqlite3 обнаруживает его как синтаксическую ошибку здесь), и это не совсем похоже на" правильный "пример в ссылке, опубликованной @ user1122549. –

+0

@ АнтонКоваленко о, мой плохой: $ .. спасибо, ты прав! – proG

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