Sqlite参考手册
C界面 | C Interface
Run-time Limits
int sqlite3_limit(sqlite3*, int id, int newVal);
这个接口允许各种结构的大小在连接的基础上受到限制。第一个参数是要设置或查询限制的数据库连接。第二个参数是定义要受限大小的构造类的限制类别之一。第三个参数是该构造的新限制。
如果新限制是负数,则限制不变。对于每个限制类别SQLITE_LIMIT_ NAME,编译时都会有一个硬预设处理器宏,名为SQLITE_MAX_ NAME。(名称中的“_LIMIT_”更改为“_MAX_”。)尝试将其上限超出上限的尝试自动截断为硬性上限。
无论限制是否更改,sqlite3_limit()接口都会返回限制的先前值。因此,要在不更改限制的情况下查找限制的当前值,只需使用第三个参数设置为-1来调用此接口。
运行时限制旨在用于既管理其内部数据库又管理受不可信外部源控制的数据库的应用程序中。一个示例应用程序可能是一个Web浏览器,它有自己的数据库用于存储历史记录,以及由从互联网下载的JavaScript应用程序控制的单独数据库 内部数据库可以被赋予较大的默认限制。由外部来源管理的数据库可以提供更小的限制,以防止拒绝服务攻击。开发人员可能也希望使用sqlite3_set_authorizer()接口来进一步控制不可信的SQL。使用max_page_count PRAGMA可以包含由不受信任的脚本创建的数据库的大小。
未来版本中可能会添加新的运行时限制类别。
C界面 | C Interface相关
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来
主页 | https://sqlite.org/ |
源码 | https://www.sqlite.org/src/ |
发布版本 | 3.21.0 |