这里有一个简单的例子:
public boolean containsId(Long userid) {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from " + getTableName() + " where id = " + userid, null);
boolean rows = cursor.getCount() > 0;
db.close();
return rows;
}
我认为sqlite会自动开始事务。我的同事说我必须始终开始事务。
那么什么是正确的模式?如果我从数据库中读取数据,应该启动一个事务吗?我确定在这个表中此时没有其他线程会写入。