Prepared Statement Scan Status Opcodes
Prepared Statement Scan Status Opcodes
#define SQLITE_SCANSTAT_NLOOP 0
#define SQLITE_SCANSTAT_NVISIT 1
#define SQLITE_SCANSTAT_EST 2
#define SQLITE_SCANSTAT_NAME 3
#define SQLITE_SCANSTAT_EXPLAIN 4
#define SQLITE_SCANSTAT_SELECTID 5
以下常量可用于sqlite3_stmt_scanstatus(S,X,T,V)接口的T参数。每个常量指定sqlite3_stmt_scanstatus()返回的不同度量标准。
当返回到V的值是一个字符串时,保存该字符串的空间由准备好的语句S管理,并在S完成时自动释放。
SQLITE_SCANSTAT_NLOOP T参数指向的sqlite3_int64变量将被设置为第X个循环运行的总次数。SQLITE_SCANSTAT_NVISIT T参数指向的sqlite3_int64变量将被设置为所有迭代次数所检查的总行数第X个循环.SQLITE_SCANSTAT_EST由T参数指向的“double”变量将设置为查询规划器对第X个循环的每次迭代输出的平均行数的估计。如果查询计划者的估计值准确,那么此值将接近商NVISIT / NLOOP,并且具有相同SELECTID的所有先前循环的此值的乘积将为当前循环的NLOOP值。SQLITE_SCANSTAT_NAMEThe“const char *” 由T参数指向的变量将被设置为零终止的UTF-8字符串,其中包含用于第X个循环的索引或表的名称。SQLITE_SCANSTAT_EXPLAIN T参数指向的“const char *”变量将被设置为包含第X个循环的EXPLAIN QUERY PLAN描述的零终止的UTF-8字符串。SQLITE_SCANSTAT_SELECT由T参数指向的“int”变量将被设置为第X个循环的“select-id”。select-id标识循环是哪个查询或子查询的一部分。主查询的选择标识为零。select-id与EXPLAIN QUERY PLAN查询的第一列中输出的值相同。T参数指向的变量将被设置为零终止的UTF-8字符串,其中包含第X个循环的EXPLAIN QUERY PLAN描述。SQLITE_SCANSTAT_SELECT由T参数指向的“int”变量将被设置为第X个循环的“select-id”。select-id标识循环是哪个查询或子查询的一部分。主查询的选择标识为零。select-id与EXPLAIN QUERY PLAN查询的第一列中输出的值相同。T参数指向的变量将被设置为零终止的UTF-8字符串,其中包含第X个循环的EXPLAIN QUERY PLAN描述。SQLITE_SCANSTAT_SELECT由T参数指向的“int”变量将被设置为第X个循环的“select-id”。select-id标识循环是哪个查询或子查询的一部分。主查询的选择标识为零。select-id与EXPLAIN QUERY PLAN查询的第一列中输出的值相同。主查询的选择标识为零。select-id与EXPLAIN QUERY PLAN查询的第一列中输出的值相同。主查询的选择标识为零。select-id与EXPLAIN QUERY PLAN查询的第一列中输出的值相同。