android SQLite数据库存储数据

发表于:2013-8-23 10:01

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:fyhzf1986    来源:51Testing软件测试网采编

  不管你如何执行查询,都会返回一个 Cursor,这是 Android 的 SQLite 数据库游标,Cursor 是每行的集合。

  使用 moveToFirst() 定位第一行。

  你必须知道每一列的名称。

  你必须知道每一列的数据类型。

  Cursor 是一个随机的数据源。

  所有的数据都是通过下标取得。

  关于 Cursor 的重要方法:

  close()
  关闭游标,释放资源
  copyStringToBuffer(int columnIndex, CharArrayBuffer buffer)
  在缓冲区中检索请求的列的文本,将将其存储
  getColumnCount()
  返回所有列的总数
  getColumnIndex(String columnName)
  返回指定列的名称,如果不存在返回-1
  getColumnIndexOrThrow(String columnName)
  从零开始返回指定列名称,如果不存在将抛出IllegalArgumentException 异常。
  getColumnName(int columnIndex)
  从给定的索引返回列名
  getColumnNames()
  返回一个字符串数组的列名
  getCount()
  返回Cursor 中的行数
  moveToFirst()
  移动光标到第一行
  moveToLast()
  移动光标到最后一行
  moveToNext()
  移动光标到下一行
  moveToPosition(int position)
  移动光标到一个绝对的位置
  moveToPrevious()
  移动光标到上一行

  现在让我们看看如何循环 Cursor 取出我们需要的数据:

Cursor result=db.rawQuery("SELECT pkid, date, context FROM draftbox",null);
result.moveToFirst();
while (!result.isAfterLast()) {
     int id=result.getInt(0);
     String date=result.getString(1);
     //通过字段字取值
     String context=result.getString(result.getColumnIndex("context"));
     result.moveToNext();
}
result.close(); 
 
  SQLite 数据库管理工具

  在 Android 中使用 SQLite 数据库管理工具 在其他数据库上作开发,一般都使用工具来检查和处理数据库的内容,而不是仅仅使用数据库的 API。

  使用 Android 模拟器,有两种可供选择的方法来管理数据库。

  首先,模拟器绑定了 sqlite3 控制台程序,可以使用 adb shell 命令来调用他。只要你进入了模拟器的 shell,在数据库的路径执行 sqlite3 命令就可以了。

  数据库文件一般存放在: /data/data/<项目文件夹>/databases/<数据库名>如果你喜欢使用更友好的工具,你可以把数据库拷贝到你的开发机上,使用 SQLite-aware 客户端来操作它。这样的话,你在一个数据库的拷贝上操作,如果你想要你的修改能反映到设备上,你需要把数据库备份回去。

  把数据库从设备上考出来,你可以使用 adb pull 命令(或者在 IDE 上做相应操作)。

  存储一个修改过的数据库到设备上,使用 adb push 命令。 一个最方便的 SQLite 客户端是 FireFox SQLite Manager 扩展,它可以跨所有平台使用。

44/4<1234
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号