2

I have a listview and i am getting the data from sqlite database. My problem is to delete a row which user selected it from listview. I can delete all table by

dbConn.delete("Restobj", null,null);

But i cant delete a single row which is selected from listview.

Please Help

3 Answers 3

3

You essentially need to get the row id from the selected ListView item. Using the row id you can easily delete that row:

String where = "_id = " + _id;
db.delete(TABLE_NAME, where, null);

After deleting the row item make sure you get the ListView adapter cursor and do a requery. If you don't you will not see the updated table, hence updated ListView.

Sign up to request clarification or add additional context in comments.

Comments

0

Make use of those other two parameters to the delete method. Take a look at the API documentation for more information.

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html#delete%28java.lang.String,%20java.lang.String,%20java.lang.String[]%29

Pass in something other than null.

Also, try searching on stackoverflow and/or Google for this topic. The answers are plentiful.

Comments

0

You need to supply the appropriate values to the database object. I'm assuming that dbConn is an instance of a database object. If that is the case, you can pass in dbConn.delete() with 3 arguments. The first argument is the table name. The second is the whereClause. This is something similar to:

"id = " + objectDatabaseId

The final variable in this case you can leave blank. The end result is something like:

String whereClause = "id = " + objectDatabaseId;
dbConn.delete("Restobj", whereClause, null);

As a side note, it's better to use constants when referring to table names and table columns as apposed to "Restobj" you should have something like RestObject.TABLE_NAME where the constant is defined as a static final String inside of the RestObject.

-Randall

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.