Small. Fast. Reliable.
Choose any three.

SQLite C接口

运行时限制类别

#定义SQLITE_LIMIT_LENGTH 0
#定义SQLITE_LIMIT_SQL_LENGTH 1
#定义SQLITE_LIMIT_COLUMN 2
#定义SQLITE_LIMIT_EXPR_DEPTH 3
#定义SQLITE_LIMIT_COMPOUND_SELECT 4
#定义SQLITE_LIMIT_VDBE_OP 5
#定义SQLITE_LIMIT_FUNCTION_ARG 6
#定义SQLITE_LIMIT_ATTACHED 7
#定义SQLITE_LIMIT_LIKE_PATTERN_LENGTH 8
#定义SQLITE_LIMIT_VARIABLE_NUMBER 9
#定义SQLITE_LIMIT_TRIGGER_DEPTH 10
#定义SQLITE_LIMIT_WORKER_THREADS 11

这些常量定义了各种性能限制,可以在运行时使用sqlite3_limit()降低这些限制。各种限制含义的摘要如下所示。有关更多信息,请参见SQLite中的Limits

SQLITE_LIMIT_LENGTH
任何字符串或BLOB或表行的最大大小,以字节为单位。

SQLITE_LIMIT_SQL_LENGTH
SQL语句的最大长度,以字节为单位。

SQLITE_LIMIT_COLUMN
表定义或SELECT结果集中的最大列数,或索引或ORDER BY或GROUP BY子句中的最大列数。

SQLITE_LIMIT_EXPR_DEPTH
任何表达式上分析树的最大深度。

SQLITE_LIMIT_COMPOUND_SELECT
复合SELECT语句中的最大术语数。

SQLITE_LIMIT_VDBE_OP
虚拟机程序中用于实现SQL语句的最大指令数。如果sqlite3_prepare_v2()或等效方法试图在单个准备好的语句中为多个操作码分配空间,则将返回SQLITE_NOMEM错误。

SQLITE_LIMIT_FUNCTION_ARG
一个函数的最大参数个数。

SQLITE_LIMIT_ATTACHED
附加数据库的最大数量。

SQLITE_LIMIT_LIKE_PATTERN_LENGTH
LIKEGLOB运算符的pattern参数的最大长度。

SQLITE_LIMIT_VARIABLE_NUMBER
SQL语句中任何参数的最大索引号。

SQLITE_LIMIT_TRIGGER_DEPTH
触发器的最大递归深度。

SQLITE_LIMIT_WORKER_THREADS
一个准备好的语句可以启动的辅助工作线程的最大数量 。

另请参见 对象常量函数的列表