【问题标题】:Android SQLite - selectionArgs other than StringsAndroid SQLite - 字符串以外的 selectionArgs
【发布时间】:2011-07-16 00:45:35
【问题描述】:

我有一个包含 BLOB 列的表(它只有 16 个字节)。我想运行SELECT * FROM myTable WHERE blobColumn = ? 形式的查询并将一个字节数组绑定到该列。理想情况下,我可以说 myDatabase.rawQuery("SELECT * FROM myTable WHERE blobColumn = ?", myByteArray) 或其一些变体,但 rawQuery 函数仅支持字符串参数 - 尽管查看 Android 源代码,但似乎私有方法确实包括 bindBlob(int, byte[])

当然,我可以只运行查询SELECT * FROM myTable WHERE blobColumn = x'CAFE1234CAFE1234CAFE1234CAFE1234',但有没有不需要将 blob 转换为字符串的方法?

【问题讨论】:

    标签: android sql sqlite


    【解决方案1】:

    我不相信您可以在不先转换 Blob 字段的情况下比较它的内容。您能否创建一个额外的列并使用某种类型的键加载它,该键可能是唯一的并且可以描述它的关联 Blob 数据?

    【讨论】:

      【解决方案2】:

      试试这个作为你的论据?查询:

      新字符串 [] { String.valueOf(mByteArray) }

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-12
        • 2013-11-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多