gpt4 book ai didi

android - 如何在游标对象保持第一行并移动到获取第二行时中断游标处理?

转载 作者:行者123 更新时间:2023-11-29 21:58:25 27 4
gpt4 key购买 nike

因为我只从 SqLite 数据库中获取一列,但在我的游标对象中获取了超过 1MB 的数据,所以我无法拆分我的数据库查询。是否有可能在游标获取第一行后立即中断游标处理,并且在那个特定时间我想将此游标对象值保存在另一个对象中。在游标清除该值并移动到下一个以获取数据库中的第二行之后,这将一直持续到记录结束?

最佳答案

如果您执行以下操作会怎样? (这只是一个想法)仅使用 id 列获取您需要的所有行(获取 id 而不是 blob 列)。迭代抛出该游标,并为每一行使用您的 blob 仅获取给定 id 的一行。然后关闭该 Cursor 并为下一个 id 行打开一个新的 Cursor:

//just fetch the ids of the wanted rows
Cursor idCursor = db.query("TABLE_NAME",new String[]{"_id"}, null, null, null,null,null);
Cursor blobCursor;

//for each row (id)
while(idCursor.moveToNext())
{

//fetch one row with the blob of the given id
blobCursor = db.query("TABLE_NAME",new String[]{"image"}, "_id = ?", new String[] {new Long(idCursor.getLong(0)).toString()}, null,null,null);

if(blobCursor.moveToFirst())
{

//get the blob and store it
blobCursor.getBlob(0);

}

blobCursor.close(); //close the cursor (and release resources)

}
idCursor.close();

关于android - 如何在游标对象保持第一行并移动到获取第二行时中断游标处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12589608/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com