android - SQLite exception -


i have problem inserting values sqllite database.

private static final string sql_create_table_meter = "create table "         + table_meter + " ( "          + meter_key_id + " integer primary key autoincrement, "         + meter_key_meter_id + " text unique, "         + meter_key_account_id + " text, "         + meter_key_model + " text, "         + meter_key_type + " text, "         + meter_key_location + " text, "         + meter_key_accrued + " double, "         + meter_key_current + " double, "         + meter_key_installation_act_code + " text, "         + meter_key_installation_location_id + " text );"; 

so meter_key_id unique.

i adding new meters , showing log new inserting id.

public void addmeters(list<meter> meters, string accountid) {     mdb.begintransaction();     try {         for(int = 0; < meters.size(); i++) {             log.d("vodomerdbhelper", meters.get(i).id);             mdb.insert(table_meter, null, createmetervalues(meters.get(i), accountid));         }         mdb.settransactionsuccessful();     } {         mdb.endtransaction();     } } 

my log shows me next:

03-24 13:13:27.126: d/vodomerdbhelper(7299): 29980 03-24 13:13:28.596: d/vodomerdbhelper(7299): 29981 03-24 13:13:29.396: d/vodomerdbhelper(7299): 29983 03-24 13:13:29.426: d/vodomerdbhelper(7299): 29982 03-24 13:13:29.756: d/vodomerdbhelper(7299): 29984 03-24 13:13:30.056: d/vodomerdbhelper(7299): 29985 

so values different. have next exception

03-24 13:13:27.166: e/sqlitedatabase(7299): error inserting id=29980     installation_location_id=93129966 model=СКВ-15/Х ВiР-М account_id=3072460011 location=Сан.узел current=0.0 installation_act_code=29935 type=расход холодной вод  accrued=4.0 03-24 13:13:27.166: e/sqlitedatabase(7299): android.database.sqlite.sqliteconstraintexception: column id not unique (code 19) 03-24 13:13:27.166: e/sqlitedatabase(7299):     @ android.database.sqlite.sqliteconnection.nativeexecuteforlastinsertedrowid(native method) 03-24 13:13:27.166: e/sqlitedatabase(7299):     @ android.database.sqlite.sqliteconnection.executeforlastinsertedrowid(sqliteconnection.java:782) 

next check sqllite database , ok. new data here , problems. why exception has been thrown?

found missed. has been inserting values 1 more time other method. all.


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -