[問題] 該如何取得SQLite內資料的id?

看板AndroidDev作者時間11年前 (2013/09/27 10:11), 編輯推噓2(203)
留言5則, 3人參與, 最新討論串1/1
以下程式碼是我在 SQLiteOpenHelper class 建造SQLite資料庫的語法 public class DBService extends SQLiteOpenHelper{ ... @Override public void onCreate(SQLiteDatabase db) { String sql = "CREATE TABLE [t_record] (" + "[id] AUTOINC," + "[date] DATE(20) NOT NULL ON CONFLICT FAIL," + "[item] VARCHAR(20) NOT NULL ON CONFLICT FAIL," + "[money] INTEGER(20)," + "[note] VARCHAR[20], " + "CONSTRAINT [sqlite_autoindex_t_record_1] PRIMARY KEY ([id]))"; db.execSQL(sql); } ... } 在這個table建立好之後 可以新增一筆一筆資料 並且依照日期分類,把資料丟到ListView中展示出來( http://i.imgur.com/NAzQlcj.png
) 目前遇到的問題是 我需要刪除資料,可是卻不知道要如何抓出 id 並把id放入 "delete from t_record where id = " + id轉成字串 SQL語法 想請問版上高手,這個問題該如何解決,或是要往哪個方向可以找到解決方法?? 感謝版上高手!!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.254.96.26

09/27 12:58, , 1F
如果id是pk,我記得好像是要加"_"做開始的,例如 _id
09/27 12:58, 1F

09/27 13:00, , 2F
你試試在id這句改成 _id integer primary key not null
09/27 13:00, 2F

09/28 21:23, , 3F
你撈資料出來丟到ListView時,id不是會一起出來?
09/28 21:23, 3F

09/28 21:23, , 4F
要不然你 date item是怎麼取得的
09/28 21:23, 4F

10/01 11:27, , 5F
Id = cursor.getInt(cursor.getColumnIndex(Id欄位));
10/01 11:27, 5F
文章代碼(AID): #1IHEbbeX (AndroidDev)