怎么运行呢? SQLite的

时间:2014-01-16 00:08:25

标签: android sqlite

也许我的问题会如此愚蠢,但我在初学者的java /编程主题 我有一个教程:
http://hmkcode.com/android-simple-sqlite-database-tutorial/

我的问题是如何从那里开始编辑记录。

我正在尝试这个但没有结果:

Book book = new Book();
book.setAuthor("NEW name");
book.setTitle("new TITLE ");
db.updateBook(list.get(1));

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

这是解决方案:

// Updating single book
public int updateBook(Book book, String newTitle, String newAuthor) {

// 1. get reference to writable DB
SQLiteDatabase db = this.getWritableDatabase();

// 2. create ContentValues to add key "column"/value
ContentValues values = new ContentValues();
values.put("title", newTitle); // get title 
values.put("author", newAuthor()); // get author

// 3. updating row
int i = db.update(TABLE_BOOKS, //table
        values, // column/value
        KEY_ID+" = ?", // selections
        new String[] { String.valueOf(book.getId()) }); //selection args

 // Based on your condition

// 4. close
db.close();

return i;

}

答案 1 :(得分:0)

这里有一篇关于调试的好文章,这项技能将帮助您解决和理解大部分问题

http://www.vogella.com/tutorials/EclipseDebugging/article.html

日志问题,

因为您记录发送的对象而不是使用新数据更新对象,因此您记录的订单对象是旧对象,

获取新订单数据后,在带有订单ID的更新语句后进行查询,您将看到更改后的数据