java - moveToFirst的SQLite数据库函数

标签 java android mysql sql sqlite

我已经在数据库中插入了一些值并使用从 database.insert 命令获得的数据集的 insertId 查询游标,但我没有得到 cursor.moveToFirst() 的功能,为什么我必须调用它 ?在调用它之后,我能够在某个对象中获取插入的值!!

 long insertId = database.insert(MySQLiteHelper.TABLE_NAME, null,
        values);

   Cursor cursor = database.query(MySQLiteHelper.TABLE_NAME,
        allColumns, MySQLiteHelper.COLUMN_ID + " = " + insertId, null,
        null, null, null);
    cursor.moveToFirst();
 Message newMessage = cursorToMessage(cursor);
    cursor.close();

最佳答案

光标指向您的数据。起初它指向任何地方,所以这就是为什么你必须调用 moveToFirst() 的原因。如果您会得到不止一个结果,您可以在 while 循环中调用 moveToNext(),只要有结果,循环就会继续。

关于java - moveToFirst的SQLite数据库函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18704512/

相关文章:

android - 我在屏幕底部编辑文本。但我想要,当我开始用键盘输入一些值时,它应该在屏幕顶部

java - 为什么我的应用程序名称与 Activity 名称相同?

php 将值与存储在表中的用户定义的公式进行匹配并执行请求的数学运算

java - Android:如何将位图图像传递到 ArrayList<Bitmap> 并检索它

java - 什么是NullPointerException,我该如何解决?

java - 此 Web 应用程序开发的基础知识

java - 如何在 Play! 的 YAML 文件中定义 map 框架?

android - 在自定义 ListView 中处理 imageButton 单击

php - 推进ORM:将具有外键关系的通用模型对象完全递归合并,以进行JSON序列化

mysql - 有没有办法在mysql中编辑Information_schema