Small. Fast. Reliable. Choose any three.
SQLite C Interface
ðÏÄÇÏÔÏ×ÌÅÎÎÙÅ ËÏÄÙ ÏÐÅÒÁÃÉÉ ÓÔÁÔÕÓÁ ÐÒÏÓÍÏÔÒÁ ÚÁÐÒÏÓÁ
#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
#define SQLITE_SCANSTAT_PARENTID 6
#define SQLITE_SCANSTAT_NCYCLE 7
óÌÅÄÕÀÝÉÅ ËÏÎÓÔÁÎÔÙ ÍÏÇÕÔ ÂÙÔØ ÐÒÉÍÅÎÅÎÙ ÄÌÑ ÐÁÒÁÍÅÔÒÁ T ×
sqlite3_stmt_scanstatus(S,X,T,V).
ëÁÖÄÁÑ ËÏÎÓÔÁÎÔÁ ÏÐÒÅÄÅÌÑÅÔ ÒÁÚÌÉÞÎÕÀ ÍÅÔÒÉËÕ ÄÌÑ ×ÏÚ×ÒÁÔÁ
sqlite3_stmt_scanstatus().
ëÏÇÄÁ ÚÎÁÞÅÎÉÅ, ×ÏÚ×ÒÁÝÅÎÎÏÅ × V, ÜÔÏ ÓÔÒÏËÁ,
ÍÅÓÔÏÍ, ÞÔÏÂÙ ÈÒÁÎÉÔØ ÔÕ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ ÕÐÒÁ×ÌÑÅÔ ÐÏÄÇÏÔÏ×ÌÅÎÎÙÊ ÚÁÐÒÏÓ
S É Á×ÔÏÍÁÔÉÞÅÓËÉ ÏÓ×ÏÂÏÄÉÔ, ËÏÇÄÁ S ÚÁ×ÅÒÛÅÎ.
îÅ ×ÓÅ ÚÎÁÞÅÎÉÑ ÄÏÓÔÕÐÎÙ ÄÌÑ ×ÓÅÈ ÜÌÅÍÅÎÔÏ× ÚÁÐÒÏÓÁ.
ëÏÇÄÁ ÚÎÁÞÅÎÉÅ ÎÅÄÏÓÔÕÐÎÏ, ×ÙÈÏÄÎÁÑ ÐÅÒÅÍÅÎÎÁÑ ÕÓÔÁÎÏ×ÌÅÎÁ × -1,
ÅÓÌÉ ÚÎÁÞÅÎÉÅ ÞÉÓÌÏ×ÏÅ,
ÉÌÉ × NULL, ÅÓÌÉ ÜÔÏ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ (SQLITE_SCANSTAT_NAME).
- SQLITE_SCANSTAT_NLOOP
- sqlite3_int64 ÜÔÏ
ÐÅÒÅÍÅÎÎÁÑ, ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ V ÐÁÒÁÍÅÔÒ, ÂÕÄÅÔ ÕÓÔÁÎÏ×ÌÅÎÁ × ÏÂÝÅÅ
ËÏÌÉÞÅÓÔ×Ï ×ÒÅÍÅÎÉ, ËÏÔÏÒÏÅ ÒÁÂÏÔÁÌ X-Ê ÃÉËÌ.
- SQLITE_SCANSTAT_NVISIT
- sqlite3_int64 ÜÔÏ
ÐÅÒÅÍÅÎÎÁÑ, ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ V ÐÁÒÁÍÅÔÒ, ÂÕÄÅÔ ÕÓÔÁÎÏ×ÌÅÎÁ × ÏÂÝÅÅ
ËÏÌÉÞÅÓÔ×Ï ÓÔÒÏË, ÉÓÓÌÅÄÏ×ÁÎÎÙÈ ×ÓÅÍÉ ÐÏ×ÔÏÒÅÎÉÑÍÉ X-ÇÏ ÃÉËÌÁ.
- SQLITE_SCANSTAT_EST
- ðÅÒÅÍÅÎÎÁÑ "double", ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ ÐÁÒÁÍÅÔÒ V, ÂÕÄÅÔ ÕÓÔÁÎÏ×ÌÅÎÁ ×
ÏÃÅÎËÕ ÐÌÁÎÉÒÏ×ÝÉËÁ ÚÁÐÒÏÓÁ ÄÌÑ ÓÒÅÄÎÅÇÏ ËÏÌÉÞÅÓÔ×Á ×Ù×ÏÄÁ ÓÔÒÏË
ÏÔ ËÁÖÄÏÇÏ ÐÏ×ÔÏÒÅÎÉÑ ÃÉËÌÁ X. åÓÌÉ ÏÃÅÎËÉ ÐÌÁÎÉÒÏ×ÝÉËÁ ÚÁÐÒÏÓÁ ÂÙÌÉ ÔÏÞÎÙ,
ÔÏ ÜÔÏ ÚÎÁÞÅÎÉÅ ÐÒÉÂÌÉÚÉÔÅÌØÎÏ NVISIT/NLOOP É ÐÒÏÉÚ×ÅÄÅÎÉÅ ÜÔÏÇÏ ÚÎÁÞÅÎÉÑ
ÄÌÑ ×ÓÅÈ ÐÒÅÄÛÅÓÔ×ÕÀÝÉÈ ÃÉËÌÏ× ÁÎÁÌÏÇÉÞÎÏ SELECTID É NLOOP
ÄÌÑ ÔÅËÕÝÅÊ ÉÔÅÒÁÃÉÉ.
- SQLITE_SCANSTAT_NAME
- ðÅÒÅÍÅÎÎÁÑ "const char *", ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ ÐÁÒÁÍÅÔÒ V, ÂÕÄÅÔ
ÕÓÔÁÎÏ×ÌÅÎÁ × ÚÁËÏÎÞÅÎÎÕÀ ÎÏÌÅÍ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ UTF-8, ÓÏÄÅÒÖÁÝÕÀ
ÎÁÚ×ÁÎÉÅ ÉÎÄÅËÓÁ ÉÌÉ ÔÁÂÌÉÃÙ, ÉÓÐÏÌØÚÕÅÍÏÇÏ ÄÌÑ ÃÉËÌÁ X.
- SQLITE_SCANSTAT_EXPLAIN
- ðÅÒÅÍÅÎÎÁÑ "const char *", ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ ÐÁÒÁÍÅÔÒ V, ÂÕÄÅÔ
ÕÓÔÁÎÏ×ÌÅÎÁ × ÚÁËÏÎÞÅÎÎÕÀ ÎÏÌÅÍ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ UTF-8, ÓÏÄÅÒÖÁÝÕÀ
ÏÐÉÓÁÎÉÅ EXPLAIN QUERY PLAN ÄÌÑ ÃÉËÌÁ X.
- SQLITE_SCANSTAT_SELECTID
- ðÅÒÅÍÅÎÎÁÑ "int", ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ ÐÁÒÁÍÅÔÒ V, ÂÕÄÅÔ ÕÓÔÁÎÏ×ÌÅÎÁ ×
id ÄÌÑ ÜÌÅÍÅÎÔÁ ÐÌÁÎÁ ÚÁÐÒÏÓÏ× X. id ÕÎÉËÁÌØÎÏ × ÒÁÍËÁÈ ÚÁÐÒÏÓÁ.
select-id ÔÁ ÖÅ ÓÁÍÁÑ ×ÅÌÉÞÉÎÁ, ËÁË ÐÒÏÉÚ×ÅÄÅÎÎÁÑ × ÐÅÒ×ÏÊ ËÏÌÏÎËÅ ÚÁÐÒÏÓÁ
EXPLAIN QUERY PLAN.
- SQLITE_SCANSTAT_PARENTID
- ðÅÒÅÍÅÎÎÁÑ "int", ÎÁ ËÏÔÏÒÕÀ ÕËÁÚÙ×ÁÅÔ ÐÁÒÁÍÅÔÒ V, ÂÕÄÅÔ ÕÓÔÁÎÏ×ÌÅÎÁ ×
id ÒÏÄÉÔÅÌÑ ÔÅËÕÝÅÇÏ ÜÌÅÍÅÎÔÁ ÚÁÐÒÏÓÁ, ÅÓÌÉ ×ÏÚÍÏÖÎÏ, ÉÌÉ Ë ÎÏÌÀ, ÅÓÌÉ Õ
ÜÌÅÍÅÎÔÁ ÚÁÐÒÏÓÁ ÎÅ ÂÕÄÅÔ ÒÏÄÉÔÅÌÑ. üÔÏ ÔÏ ÖÅ ÓÁÍÏÅ
ÚÎÁÞÅÎÉÅ, ËÁË ×ÏÚ×ÒÁÝÅÎÏ ×Ï ×ÔÏÒÏÊ ËÏÌÏÎËÅ ÚÁÐÒÏÓÁ
EXPLAIN QUERY PLAN.
- SQLITE_SCANSTAT_NCYCLE
- ÷ÙÈÏÄÎÏÅ ÚÎÁÞÅÎÉÅ sqlite3_int64 ÕÓÔÁÎÏ×ÌÅÎÏ × ËÏÌÉÞÅÓÔ×Ï ÃÉËÌÏ×, ÓÏÇÌÁÓÎÏ
ÓÞÅÔÞÉËÕ ÍÅÔËÉ ×ÒÅÍÅÎÉ ÐÒÏÃÅÓÓÏÒÁ, ËÏÔÏÒÏÅ ÐÒÏÛÌÏ × ÔÏ ×ÒÅÍÑ, ËÁË ÜÌÅÍÅÎÔ
ÚÁÐÒÏÓÁ ÏÂÒÁÂÁÔÙ×ÁÌÓÑ. üÔÏ ÚÎÁÞÅÎÉÅ ÎÅÄÏÓÔÕÐÎÏ ÄÌÑ ×ÓÅÈ ÜÌÅÍÅÎÔÏ× ÚÁÐÒÏÓÁ,
ÅÓÌÉ ÜÔÏ ÎÅÄÏÓÔÕÐÎÏ, ×ÙÈÏÄÎÁÑ ÐÅÒÅÍÅÎÎÁÑ ÕÓÔÁÎÏ×ÌÅÎÁ × -1.
|