Android 在SQLite中选择重新查询还是再次触发查询

Android 在SQLite中选择重新查询还是再次触发查询,android,sqlite,Android,Sqlite,我一直在使用SQLite数据库,在这种情况下,我有一个列表,其中显示表“table1”的所有“name”字段数据。现在我有一个按钮,可以在“表1”中插入数据。使用一个简单的游标适配器填充列表,该适配器被传递一个用数据填充的游标“cursor1”。“cursor1”是使用SQLite查询“从表1中选择*”准备的。现在,当我插入数据时,我也需要更新列表 我的问题是— 适配器是否会自动感知数据库更改(我想不会) 使用cursor1.requery()是正确的,还是应该使用cursor1=db.quer

我一直在使用SQLite数据库,在这种情况下,我有一个列表,其中显示表“table1”的所有“name”字段数据。现在我有一个按钮,可以在“表1”中插入数据。使用一个简单的游标适配器填充列表,该适配器被传递一个用数据填充的游标“cursor1”。“cursor1”是使用SQLite查询“从表1中选择*”准备的。现在,当我插入数据时,我也需要更新列表

我的问题是—

  • 适配器是否会自动感知数据库更改(我想不会)
  • 使用
    cursor1.requery()
    是正确的,还是应该使用
    cursor1=db.query(“table1”,null,null,null,null,null)
  • 如果你能说明哪一个1更好,在哪种情况下,这将是很有帮助的。因为对于我上面解释的情况,
    requery()
    命令没有给出有效的结果,而后面的1可以正常工作。仍然无法理解问题可能是什么

    适配器会感测数据库吗 自动改变(我想不是)

    否,
    适配器将不会自动检测到数据库更改

    使用cursor1.requery()是正确的,或者 我应该使用游标1吗= db.query(“表1”,null,null,null, 空,空,空)


    使用
    requery()
    。从我的一本书中可以看出这项技术。

    好吧,马克!但是我使用了一个代码,在“table1”中插入一些值,然后调用requery函数,这并没有解决问题。表最初是空的,后来我插入了值,并且重新查询没有返回任何结果。但是当我使用cursor1=db.query(“table1”,null,null,null,null,null),它返回了我的值。。。我应该从中理解什么??请解释一下……重新查询方法似乎已经被弃用:@tjb:是的,这个答案是两年前的。在
    AsyncTask
    中运行一个新查询,并在新的
    游标中交换,或者使用
    加载程序
    框架。