xref: /netbsd-src/external/public-domain/sqlite/man/SQLITE_LIMIT_LENGTH.3 (revision b9988867a8ad969c45a52aa7628bc932ec98d46b)
1.Dd January 24, 2024
2.Dt SQLITE_LIMIT_LENGTH 3
3.Os
4.Sh NAME
5.Nm SQLITE_LIMIT_LENGTH ,
6.Nm SQLITE_LIMIT_SQL_LENGTH ,
7.Nm SQLITE_LIMIT_COLUMN ,
8.Nm SQLITE_LIMIT_EXPR_DEPTH ,
9.Nm SQLITE_LIMIT_COMPOUND_SELECT ,
10.Nm SQLITE_LIMIT_VDBE_OP ,
11.Nm SQLITE_LIMIT_FUNCTION_ARG ,
12.Nm SQLITE_LIMIT_ATTACHED ,
13.Nm SQLITE_LIMIT_LIKE_PATTERN_LENGTH ,
14.Nm SQLITE_LIMIT_VARIABLE_NUMBER ,
15.Nm SQLITE_LIMIT_TRIGGER_DEPTH ,
16.Nm SQLITE_LIMIT_WORKER_THREADS
17.Nd run-Time limit categories
18.Sh SYNOPSIS
19.In sqlite3.h
20.Fd #define SQLITE_LIMIT_LENGTH
21.Fd #define SQLITE_LIMIT_SQL_LENGTH
22.Fd #define SQLITE_LIMIT_COLUMN
23.Fd #define SQLITE_LIMIT_EXPR_DEPTH
24.Fd #define SQLITE_LIMIT_COMPOUND_SELECT
25.Fd #define SQLITE_LIMIT_VDBE_OP
26.Fd #define SQLITE_LIMIT_FUNCTION_ARG
27.Fd #define SQLITE_LIMIT_ATTACHED
28.Fd #define SQLITE_LIMIT_LIKE_PATTERN_LENGTH
29.Fd #define SQLITE_LIMIT_VARIABLE_NUMBER
30.Fd #define SQLITE_LIMIT_TRIGGER_DEPTH
31.Fd #define SQLITE_LIMIT_WORKER_THREADS
32.Sh DESCRIPTION
33These constants define various performance limits that can be lowered
34at run-time using
35.Fn sqlite3_limit .
36The synopsis of the meanings of the various limits is shown below.
37Additional information is available at Limits in SQLite.
38.Bl -tag -width Ds
39.It SQLITE_LIMIT_LENGTH
40The maximum size of any string or BLOB or table row, in bytes.
41.It SQLITE_LIMIT_SQL_LENGTH
42The maximum length of an SQL statement, in bytes.
43.It SQLITE_LIMIT_COLUMN
44The maximum number of columns in a table definition or in the result
45set of a SELECT or the maximum number of columns in an index
46or in an ORDER BY or GROUP BY clause.
47.It SQLITE_LIMIT_EXPR_DEPTH
48The maximum depth of the parse tree on any expression.
49.It SQLITE_LIMIT_COMPOUND_SELECT
50The maximum number of terms in a compound SELECT statement.
51.It SQLITE_LIMIT_VDBE_OP
52The maximum number of instructions in a virtual machine program used
53to implement an SQL statement.
54If
55.Fn sqlite3_prepare_v2
56or the equivalent tries to allocate space for more than this many opcodes
57in a single prepared statement, an SQLITE_NOMEM error is returned.
58.It SQLITE_LIMIT_FUNCTION_ARG
59The maximum number of arguments on a function.
60.It SQLITE_LIMIT_ATTACHED
61The maximum number of attached databases.
62.It SQLITE_LIMIT_LIKE_PATTERN_LENGTH
63The maximum length of the pattern argument to the LIKE or GLOB
64operators.
65.It SQLITE_LIMIT_VARIABLE_NUMBER
66The maximum index number of any parameter in an SQL statement.
67.It SQLITE_LIMIT_TRIGGER_DEPTH
68The maximum depth of recursion for triggers.
69.It SQLITE_LIMIT_WORKER_THREADS
70The maximum number of auxiliary worker threads that a single prepared statement
71may start.
72.El
73.Pp
74.Sh IMPLEMENTATION NOTES
75These declarations were extracted from the
76interface documentation at line 4068.
77.Bd -literal
78#define SQLITE_LIMIT_LENGTH                    0
79#define SQLITE_LIMIT_SQL_LENGTH                1
80#define SQLITE_LIMIT_COLUMN                    2
81#define SQLITE_LIMIT_EXPR_DEPTH                3
82#define SQLITE_LIMIT_COMPOUND_SELECT           4
83#define SQLITE_LIMIT_VDBE_OP                   5
84#define SQLITE_LIMIT_FUNCTION_ARG              6
85#define SQLITE_LIMIT_ATTACHED                  7
86#define SQLITE_LIMIT_LIKE_PATTERN_LENGTH       8
87#define SQLITE_LIMIT_VARIABLE_NUMBER           9
88#define SQLITE_LIMIT_TRIGGER_DEPTH            10
89#define SQLITE_LIMIT_WORKER_THREADS           11
90.Ed
91.Sh SEE ALSO
92.Xr sqlite3_limit 3 ,
93.Xr sqlite3_prepare 3 ,
94.Xr sqlite3_stmt 3
95