sqlite get 字段超过 2 MB [重复]

2024-03-29

当我尝试从 SQlite 获取数据且字段大小超过 2 MB 时,它会抛出异常

"Couldn't read row 0, col 0 from Cursor Window. Make sure the Cursor is initialized correctly before accessing data from it."

如何将超过 2 Mb 的字段存储到 string 中?

我将多个 Base64 字符串作为长文本存储在 sqlite 中,它存储成功,但是当我从数据库中获取数据时,由于该字段包含超过 2400000 个字符,因此出现异常。

这是代码

public ArrayList<HashMap<String, String>> selectRecordFromDbList(String qry, String[] args, boolean status) {
        ArrayList<HashMap<String, String>> arraylist = null;
        try {
            HashMap<String, String> mapRow;
            Cursor cursor = sqLiteDatabase.rawQuery(qry, args);
            if (cursor.moveToFirst()) {
                arraylist = new ArrayList<>();
                do {
                    mapRow = new HashMap<>();
                    for (int i = 0; i < cursor.getColumnCount(); i++) {
                        mapRow.put(cursor.getColumnName(i), cursor.getString(i));
                    }
                    arraylist.add(mapRow);
                } while (cursor.moveToNext());
            }
            if (cursor != null && cursor.isClosed()) {
                cursor.close();
            }
        } catch (Exception e) {
            Log.e("SqliteAssetHelper:", e.getMessage());
            arraylist = null;

        }
        return arraylist;
    }

不建议在 SQLite 数据库中存储大型 BLOBS 或类似数据。您应该使用文件系统并仅存储对数据库中数据的引用。 参考这个answer https://stackoverflow.com/a/12709158/1681267

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sqlite get 字段超过 2 MB [重复] 的相关文章

随机推荐

  • 在 VideoView 中显示缩略图的问题

    我正在将 VideoView 用于网络视频 并且我还有一个包含相应缩略图的位图对象 现在我应该如何将位图设置为 VideoView 以显示缩略图 我在用着 videoView setBackgroundDrawable new Bitmap
  • OpenMP:不要使用超线程核心(一半“num_threads()”带有超线程)

    In g 4 7 中的 OpenMP 并行 效率不高吗 5x CPU 时为 2 5x https stackoverflow com questions 36950532 is openmp parallel for in g 4 7 no
  • C# 中可以有同名的公共 getter 和私有 setter 吗?

    如何为属性创建公共 getter 和私有 setter 下面的说法正确吗 public String Password set this password value private String Password get return t
  • Mongoose findOne 通过 _id 嵌入文档

    我正在尝试将菜单推送到嵌入文档 但我在餐厅里没有定义 findOne 我只是想将一些文档推送到餐厅的菜单类别中 正如您在架构中看到的 var RestaurantSchema new mongoose Schema contactTelph
  • Python 服务器客户端 WinError 10057

    我正在使用 Python 3 3 制作服务器和客户端socket模块 我的服务器代码工作正常 但此客户端代码返回错误 这是代码 import socket import sys import os sock socket socket so
  • 如何覆盖 GIN 中的绑定

    我找到了 Guice 的答案重写 Guice 中的绑定 https stackoverflow com q 483087 929804但不知道如何在 GWT 中对 GIN 执行同样的操作 提前致谢 据我所知 不支持 回答您的评论 如果您运行
  • 在 json 中存储 pandas 数据帧时保持列和行顺序

    当使用 to json 将数据存储在 json 对象中并使用 read json 读回时 行和列将按字母顺序返回 有没有办法保持结果排序或在检索时重新排序 你可以使用orient split 它将索引和列信息存储在列表中 并保留顺序 In
  • 每个故事显示不同的开放图对象

    好吧 我不确定我在开放图谱中是否做错了什么 但就是这样 我的开放图谱中有 3 个故事 它们是链接到一种对象类型的三个不同操作 Make A Pledge To gt Cause Create gt Cause Log Expense For
  • 在没有 C++ 11 的情况下使用 char16_t、char32_t 等?

    我想要固定宽度类型 包括字符类型
  • 软键盘打开时调整布局

    我在某些应用程序中看到 当显示软键盘时布局会发生变化 这当然不是adjustPan因为整个布局 可能是内部布局 发生了变化 而不仅仅是当前的EditText 例如 这是在 Evernote 登录屏幕中 你能建议一下这是怎么做的吗 下面是一个
  • 如何获取 Webview iframe 链接来启动浏览器?

    我正在使用 WebView 来显示一个页面 其中 html 包含一个 iframe 其中 src xxxxx php 该 iframe 作为带有底层链接的广告图像加载 如果我单击该图像 链接 它会尝试在原始 iframe 中加载新页面 在那
  • 为什么建议将实例变量声明为私有?

    我的问题与Java有关 但它也可以应用于C 我想知道为什么每个人都建议创建实例变量private而不是制作它们受保护的 我们想一想 子类看不到私有变量 因此如果我需要访问或更改子类中超类的变量 我被迫使用一些访问器和修改器方法 例如getM
  • 将 Windows Phone 7 应用程序中的图像文件上传到 PHP

    我正在尝试从图片库 在 WP7 上 上传图片并将其保存在服务器上的文件夹中 在服务器上 我使用 PHP 通过 POST 方法接收文件 PHP 代码是
  • 在 fortran 中生成序列数组

    Fortran中是否有一个内在函数可以生成一个包含从a到b的数字序列的数组 类似于python的range gt gt gt range 1 5 1 2 3 4 gt gt gt range 6 10 6 7 8 9 不 没有 但是 您可以
  • 获取完整的正在运行的进程列表(Visual C++)

    我目前正在使用 EnumProcesses 函数来获取正在运行的进程的列表 然而 由于我的应用程序在用户空间中运行 因此它无法获取不在用户下运行的进程 包括系统进程 的句柄 是否有其他方法可以让我访问这些内容 我所需要的只是进程名称 只是为
  • Android:减少 GridView 中列之间的空间

    请参阅随附的屏幕截图 其中我试图减少 GridView 中列之间的空间 我的main xml如下
  • SQL 选择一行并存储在 SQL 变量中

    所以 我正在编写这个存储过程 但我对 SQL 真的很烂 我向你们提出的问题是 我可以选择整行并将其存储在变量中吗 我知道我可以做类似的事情 declare someInteger int select someInteger select
  • 日期时间格式和时区

    当尝试解析日期时DateTime createFromFormatPHP 将无法识别时区 Example t new DateTime echo t gt format Y m dTH i s 将输出 2012 01 24MSK16 53
  • Rails 控制台错误需要'./example_user'

    我正在使用 Railstutorialhttp ruby railstutorial org chapters rails flavored ruby sec a user class http ruby railstutorial org
  • sqlite get 字段超过 2 MB [重复]

    这个问题在这里已经有答案了 当我尝试从 SQlite 获取数据且字段大小超过 2 MB 时 它会抛出异常 Couldn t read row 0 col 0 from Cursor Window Make sure the Cursor i