SQLite рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛рдУрдВ

рдпрд╣ рдкреЛрд╕реНрдЯ рдЖрдВрддрд░рд┐рдХ SQLite рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ: рдЙрдирдХреА рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдЙрджреНрджреЗрд╢реНрдпред



SQLITE_MASTER



рдбреЗрдЯрд╛рдмреЗрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрд╣рд▓рд╛ рдкреГрд╖реНрда рд░реВрдЯ рдкреЗрдЬ "рдЯреЗрдмрд▓ рдмреА - рдЯреНрд░реА" рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рддрд╛рд▓рд┐рдХрд╛ "sqlite_master" (рдпрд╛ рдЕрд╕реНрдерд╛рдпреА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП "sqlite_temp_master") рд╣реИред рддрд╛рд▓рд┐рдХрд╛ рдХреА рд╕рдВрд░рдЪрдирд╛ рддрд╛рд▓рд┐рдХрд╛ 1 рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИред



рддрд╛рд▓рд┐рдХрд╛ 1








SQL рдлрд╝реАрд▓реНрдб рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд░рдиреЗ рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдХреНрд╡реЗрд░реА рдирд┐рдореНрди рдЧреБрдгреЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИ:

  1. рдХреАрд╡рд░реНрдб рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░реЛрдВ рдореЗрдВ рд╣реИрдВред
  2. рд╢рдмреНрдж рдФрд░ рд╢рдмреНрдж рдХреЗ рдмрд╛рдж TEMP рдФрд░ TEMPORARY рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
  3. рдЕрдЧреНрд░рдгреА рд╕реНрдерд╛рди рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ
  4. рдПрдХрд╛рдзрд┐рдХ рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдПрдХ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛрддрд╛ рд╣реИ




рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ, рдПрдХ рдкрдВрдХреНрддрд┐ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, sqlite_master рднреА рдЦреБрдж рдХреЛ sqlite_master рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдЖрдВрддрд░рд┐рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЖрдВрддрд░рд┐рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдо рдХреНрд░рдорд╢рдГ "sqlite_" рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдбреЗрдЯрд╛рдмреЗрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдмрдирд╛рдиреЗ рд╕реЗ рдордирд╛ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдирд╛рдо "sqlite_" рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВред



SQLITE_SEQUENCE



AUTOINCREMENT рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ред рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП, рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдкрдВрдХреНрддрд┐ "sqlite_fterence" рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред

рдЯреЗрдмрд▓ рд▓реЗрдЖрдЙрдЯ:

рд░рдЪрдирд╛рддреНрдордХ рддрд╛рд▓рд┐рдХрд╛ sqlite_fterence (рдирд╛рдо, seq);

  1. рдирд╛рдо - рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рдирд╛рдоред
  2. seq рд╡реГрджреНрдзрд┐ рдореВрд▓реНрдп рд╣реИред рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдмрдВрдзрд┐рдд рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдмрдврд╝рддрд╛ рд╣реИред рдЬрдм рдЕрдзрд┐рдХрддрдо рдорд╛рди (922337203685474780807) рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ SQLITE_FULL рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИред


рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ sqlite_fterence рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝, рд╕рдВрд╢реЛрдзрд┐рдд рдФрд░ рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реИред



SQLITE_STAT1



ANALYZE рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдИ рдЧрдИ рдПрдХ рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ред рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдФрд░ рдЕрдиреБрдХреНрд░рдорд┐рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдВрджрд░реНрдн рдЬрд╛рдирдХрд╛рд░реА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЕрдиреБрд╕реВрдЪрдХ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рднрд╛рд╡реА рддрд░реАрдХрд╛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЯреЗрдмрд▓ рд▓реЗрдЖрдЙрдЯ:

рд╕реНрд╡реЗрдд рдЯреЗрдмрд▓ sqlite_stat1 (tbl, idx, stat)

  1. tbl - рдЯреЗрдмрд▓ рдХрд╛ рдирд╛рдо
  2. рдЗрдВрдб - рдЗрдВрдбреЗрдХреНрд╕ рдирд╛рдо
  3. рд╕реНрдЯреЗрдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдХрд╛ рдПрдХ рдЕрдиреБрдХреНрд░рдо рд╣реИ: рдкрд╣рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рджреВрд╕рд░реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рдирдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдкрд╣рд▓реЗ рдХреЙрд▓рдо рдореЗрдВ рд╕рдорд╛рди рдореВрд▓реНрдп рд╣реИ, ... Nth рд╕рдВрдЦреНрдпрд╛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдорд╛рди рдорд╛рди рд╣реИрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдкрд╣рд▓рд╛ (N-1) рдХреЙрд▓рдоред


рд╕реНрдЯреЗрдЯ рдлрд╝реАрд▓реНрдб, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рдмрд╛рдж, рдХреАрд╡рд░реНрдб рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдЕрдВрддрд┐рдо рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдПрдХ рд╕реНрдерд╛рди рд╕реЗ рдЕрд▓рдЧ)ред рдпрджрд┐ рдпрд╣ рдХреАрд╡рд░реНрдб рдореМрдЬреВрдж рд╣реИ, рддреЛ рд╢реЗрдбреНрдпреВрд▓рд░ рдЕрдиреБрдХреНрд░рдорд┐рдд рдпрд╛ рд╢реНрд░реЗрдгреА рдХреНрд╡реЗрд░реА рдХреЗ рд▓рд┐рдП рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ idx рдХреЙрд▓рдо NULL рд╣реИ , рддреЛ рд╕реНрдЯреЗрдЯ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реЛрддреА рд╣реИред



SQLITE_STAT2



SQLite 3.6.18 рдХреЗ рд▓рд┐рдП рдкрджрд╛рд╡рдирдд рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ - 3.7.8ред рдЕрддрд┐рд░рд┐рдХреНрдд рдХреБрдВрдЬреА рд╡рд┐рддрд░рдг рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред



SQLITE_STAT3



SQLite 3.7 рдФрд░ рдЙрдЪреНрдЪрддрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ред рдпрджрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ SQLITE_ENABLE_STAT3 рдпрд╛ SQLITE_ENABLE_STAT4 рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрдВрдбреЗрдХреНрд╕ рдХреЗ рднреАрддрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рддрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред

рдЯреЗрдмрд▓ рд▓реЗрдЖрдЙрдЯ:

TATE sqlite_stat3 рдмрдирд╛рдПрдБ (tbl, idx, nEq, nLt, nDLT, рдирдореВрдирд╛)

  1. tbl - рдЯреЗрдмрд▓ рдХрд╛ рдирд╛рдо
  2. idx - рд╕реВрдЪрдХрд╛рдВрдХ рдирд╛рдо
  3. nEq рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЕрдиреБрдорд╛рдирд┐рдд рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдмрд╛рдпрд╛рдБ рд╕реНрддрдВрдн рдирдореВрдирд╛ рд╣реИред
  4. nLt рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЕрдиреБрдорд╛рдирд┐рдд рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдмрд╛рдпрд╛рдВ рд╕реНрддрдВрдн рдирдореВрдирд╛ рд╕реЗ рдЫреЛрдЯрд╛ рд╣реИред
  5. nDlt рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЕрднрд┐рд▓реЗрдЦреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдмрд╛рдпрд╛рдВ рд╕реНрддрдВрдн рдирдореВрдиреЗ рд╕реЗ рдЫреЛрдЯрд╛ рд╣реИред
  6. рдирдореВрдирд╛ - рдЗрд╕рдореЗрдВ рдЗрдВрдбреЗрдХреНрд╕ рдХреЗ рд╕рдмрд╕реЗ рдмрд╛рдПрдВ рдХреЙрд▓рдо рдХрд╛ рдорд╛рди рд╣реЛрддрд╛ рд╣реИ




SQLITE_STAT4



SQLite рд╕рдВрд╕реНрдХрд░рдгреЛрдВ 3.8.1 рдФрд░ рдЙрдЪреНрдЪрддрд░ рдХреЗ рд▓рд┐рдП рдЖрдВрддрд░рд┐рдХ рддрд╛рд▓рд┐рдХрд╛ред рдпрджрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ SQLITE_ENABLE_STAT4 рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрдВрдбреЗрдХреНрд╕ рдХреЗ рднреАрддрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рддрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИред

рдЯреЗрдмрд▓ рд▓реЗрдЖрдЙрдЯ:

TATE sqlite_stat4 (tbl, idx, nEq, nLt, nDLt, рдирдореВрдирд╛) рдмрдирд╛рдПрдБ;

  1. tbl - рдЯреЗрдмрд▓ рдХрд╛ рдирд╛рдо, idx - рдЗрдВрдбреЗрдХреНрд╕ рдирд╛рдо
  2. nEq рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд╣рд╛рдБ k-th рд╕рдВрдЦреНрдпрд╛ рдЙрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ k рдмрд╛рдПрдБ рдХреЙрд▓рдо рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ k рдмрд╛рдПрдБ рдХреЙрд▓рдо рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИрдВред
  3. nLt рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд╣рд╛рдБ k-th рд╕рдВрдЦреНрдпрд╛ рдЙрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ k рдмрд╛рдПрдБ рдХреЙрд▓рдо рд╣реИрдВ, рдХреБрд▓ рдореЗрдВ, рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ k рдмрд╛рдПрдБ рдХреЙрд▓рдо рд╕реЗ рдХрдоред
  4. nDLt рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд╣рд╛рдБ k-th рд╕рдВрдЦреНрдпрд╛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорд╛рдирд┐рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ k рдмрд╛рдПрдБ рдХреЙрд▓рдо, рдХреБрд▓ рдореЗрдВ, рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ k рдмрд╛рдПрдБ рдХреЙрд▓рдо рд╕реЗ рдХрдо рд╣реИрдВред
  5. рдирдореВрдирд╛ - рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕реВрдЪрдХрд╛рдВрдХ рдХреА рд╕рд╛рдордЧреНрд░реАред




SQLITE_STAT3 рдмрдирд╛рдо SQLITE_STAT4



sqlite_stat4 sqlite_stat3 рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рд╣реИред Sqlite_stat3 рддрд╛рд▓рд┐рдХрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рд╕рдмрд╕реЗ рдмрд╛рдПрдВ рд╕реНрддрдВрдн рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ, рдЬрдмрдХрд┐ sqlite_stat4 рддрд╛рд▓рд┐рдХрд╛ рд╕рднреА рд╕реВрдЪрдХрд╛рдВрдХ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред



рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП



рдПрдХ рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд╛рд░реВрдк (рдЖрд░рдПрдл) рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдпрд╛ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдореВрд▓реНрдпреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред RF рдХреЙрд▓рдо рдХреА рд╕рдВрдЦреНрдпрд╛, рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХрд╛ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП, VARINT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдПрдХ рдЪрд░ рдкреВрд░реНрдгрд╛рдВрдХ рд▓рдВрдмрд╛ рд╣реИ, рд▓рдВрдмрд╛рдИ рдореЗрдВ 1-9 рдмрд╛рдЗрдЯреНрд╕, рд╣рдлрд╝рдореИрди рд╕реНрдерд┐рд░ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╡рд┐рдзрд┐)ред

RF рд╣реИрдбрд░ рдПрдХ VARINT рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╣реИрдбрд░ рдореЗрдВ рдмрд╛рдЗрдЯреНрд╕ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ (VARINT рд╕рд╣рд┐рдд) рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрд╛рдж рдХрдИ VARINT (рддрд╛рд▓рд┐рдХрд╛ / рд╕реВрдЪрдХрд╛рдВрдХ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрддрдВрдн рдХреЗ рд▓рд┐рдП рдПрдХ) рд╣реИред рдЗрди рдЕрддрд┐рд░рд┐рдХреНрдд рдирдВрдмрд░реЛрдВ рдХреЛ рд╕реАрд░рд┐рдпрд▓ рдЯрд╛рдЗрдк рдорд╛рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рддрд╛рд▓рд┐рдХрд╛ 2 рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓рдо рдХрд╛ рдореВрд▓реНрдп рддреБрд░рдВрдд рд╢реАрд░реНрд╖рдХ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИред



рддрд╛рд▓рд┐рдХрд╛ 2








SQLITE_STAT1 рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг:



рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ:

рд░рдЪрдирд╛ рдкрд░реАрдХреНрд╖рдг (рдП, рдмреА, рд╕реА);

рдкрд░реАрдХреНрд╖рдг рдкрд░ рдЗрдВрдбрд╕реНрдЯреНрд░реАрдЬрд╝ рдмрдирд╛рдПрдБ ("рдП", "рдмреА", "рд╕реА")



рдЯреЗрд╕реНрдЯ рдЯреЗрдмрд▓ рдбреЗрдЯрд╛:





ANALYZE рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЗрдЯ рдлрд╝реАрд▓реНрдб рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ (8 3 2 1):

  1. 8 рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред
  2. 3 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╣реА рдХреЙрд▓рдо рд╣реИ:

    (рек + рей + рез) / рей = реи.рем 1
  3. 2 рдЙрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рдирдореЗрдВ рд╕рдорд╛рди рдХреЙрд▓рдо a рдФрд░ b рд╣реИрдВ:

    (реи + реи + рез) / рей = рез.рем 1
  4. 1 рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреА рдФрд╕рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╕рдорд╛рди рдХреЙрд▓рдо a, b рдФрд░ c рд╣реИрдВ:

    (рез + рез + рез) / рей = рез



All Articles