gpt4 book ai didi

Android sqlite3_limit?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:11:06 24 4
gpt4 key购买 nike

我想使用 sqlite3_limit 函数来设置附加数据库的最大数量。

sqlite3_limit(db, SQLITE_LIMIT_ATTACHED, 62);

问题 1 - 我如何(如果有的话)在 Android 中执行此操作?


我在这里读过http://sqlite.org/limits.html - 第 11 点。

默认情况下有 10 个附加数据库的软限制,但我刚刚成功附加了 11 个数据库。

问题 2 - Android 上最大附加数据库的默认行为是什么? - 它是否设置为 SQlite3 强加的硬限制 62?如果是这样,这就是我所需要的。

谢谢大家

最佳答案

sqlite3_limit只能用于降低限制:

Run-time limits are intended for use in applications that manage both their own internal database and also databases that are controlled by untrusted external sources. [...] The internal databases can be given the large, default limits. Databases managed by external sources can be given much smaller limits designed to prevent a denial of service attack.

硬限制是在编译 SQLite 时用符号 SQLITE_MAX_ATTACHED 设置的:

For each limit category SQLITE_LIMIT_NAME there is a hard upper bound set at compile-time by a C preprocessor macro called SQLITE_MAX_NAME. [...] Attempts to increase a limit above its hard upper bound are silently truncated to the hard upper bound.

看来在您的 Android 设备上,供应商确实提高了硬限制,但您不能保证在所有其他设备上都是这种情况。

关于Android sqlite3_limit?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15229848/

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