如何获得我的Android应用程序中的SQLite数据库的URI?

我有一个名为“myTestDB”的数据库的名为“list_items”的Android应用程序。 我想使用光标getContentResolver()。query()方法来获取一个光标添加到一个SimpleCursorAdapter。 query()方法的第一个参数是一个URI,我不确定这个URI应该是什么样的。

Solutions Collecting From Web of "如何获得我的Android应用程序中的SQLite数据库的URI?"

这是相当简单的方法调用看起来像这样

mDataBase.query(TABLE_NAME, columns, null, null, null, null, null);

其中,TABLE_NAME =你的SQLite表名,列是一个string数组

String columns[] = new String[] { "Column1" };

如果你想要所有的列,你可以传递null作为第二个参数。

更正: 正如其他一些人所说,没有URI。

您不要使用getContentResolver()直接访问SQLite数据库。 在使用内容提供者时使用getContentResolver() 。 您可以调用SQLiteDatabase对象上的query()以获取与SimpleCursorAdapter一起使用的Cursor

数据库没有Uri(除了它所在的文件)。 通过内容提供商pipe理的数据有一个。 如果要使用内容parsing器执行查询,则需要先编写内容提供者。

如果您不想这样做,只需使用SQLiteDatabase的query函数 – 它将返回一个可以传递给SimpleCursorAdapter的Cursor。