DBMS SQLite 3.42 рдФрд░ DuckDB 0.8.0 рдЬрд╛рд░реАред SQLite рдХреЗ рд▓рд┐рдП рд╕рдВрдЧреНрд░рд╣рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рд╕реАрдЬреА/рдПрд╕рдХреНрдпреВрдПрд▓

рдкреНрд▓рдЧ-рдЗрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рд╣рд▓реНрдХрд╛ DBMS, SQLite 3.42 рдХрд╛ рд╡рд┐рдореЛрдЪрди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред SQLite рдХреЛрдб рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рдХрд┐рд╕реА рднреА рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рддрд┐рдмрдВрдз рдХреЗ рдФрд░ рдирд┐:рд╢реБрд▓реНрдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред SQLite рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рддреНрддреАрдп рд╕рд╣рд╛рдпрддрд╛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдХрдВрд╕реЛрд░реНрдЯрд┐рдпрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ Adobe, Oracle, Mozilla, Bentley рдФрд░ Bloomberg рдЬреИрд╕реА рдХрдВрдкрдирд┐рдпрд╛рдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдореБрдЦреНрдп рдкрд░рд┐рд╡рд░реНрддрди:

  • FTS5 рдкреВрд░реНрдг-рдкрд╛рда рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рд▓рд┐рдП, рд╕рд┐рдХреНрдпреЛрд░-рдбрд┐рд▓реАрдЯ рдХрдорд╛рдВрдб рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕рднреА рдЕрд╡рд╢рд┐рд╖реНрдЯ рдбреЗрдЯрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдл рдХрд░ рджреЗрддрд╛ рд╣реИред
  • JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдЕрдм JSON5 рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред
  • рдмреЗрд╣рддрд░ рдХреНрд╡реЗрд░реА рдкреНрд▓рд╛рдирд░. рдХрд╛рдЙрдВрдЯ-рдСрдлрд╝-рд╡реНрдпреВ рдЕрдиреБрдХреВрд▓рди рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рд╣реИред рдЙрдкрд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдореЗрдВ рдЕрдкреНрд░рдпреБрдХреНрдд рд╕реНрддрдВрднреЛрдВ рдХреА рд╣реИрдВрдбрд▓рд┐рдВрдЧ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдмреЗрд╣рддрд░ рдкреБрд╢-рдбрд╛рдЙрди рдЕрдиреБрдХреВрд▓рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдиред
  • рдХреБрдЫ рдЦрддрд░рдирд╛рдХ рдХрдорд╛рдВрдб рдЬреИрд╕реЗ ".testctrl" рдХреЛ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд▓рдЖрдИ рдореЗрдВ "--рдЕрд╕реБрд░рдХреНрд╖рд┐рдд-рдкрд░реАрдХреНрд╖рдг" рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред рд╕реБрд░рдХреНрд╖рд┐рдд рдореЛрдб ("--рд╕реБрд░рдХреНрд╖рд┐рдд") рдореЗрдВ, ".рд▓реЙрдЧ рдСрди" рдФрд░ ".рд▓реЙрдЧ рдСрдл" рдХрдорд╛рдВрдб рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рддрд░реНрдХреЛрдВ рдХреЗ рд▓рд┐рдП "-" рд╡рд┐рднрд╛рдЬрдХ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╡рд┐рдХрд▓реНрдк рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЕрдХреНрд╖рдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдирдВрдд рдФрд░ NaN рдорд╛рдиреЛрдВ рд╕реЗ рдЬреБрдбрд╝реЗ ":inf" рдФрд░ ":nan" рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝реЗ рдЧрдПред
  • рдПрдкреНрд▓рд┐рдХреЗрд╢рди-рдкрд░рд┐рднрд╛рд╖рд┐рдд SQL рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рдХреНрд░реЙрд╕, рдлрд╝реБрд▓, рдЗрдирд░, рд▓реЗрдлреНрдЯ, рдиреЗрдЪреБрд░рд▓, рдЖрдЙрдЯрд░ рдФрд░ рд░рд╛рдЗрдЯ рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рд╕реЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред
  • рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд PRAGMA рдЕрдЦрдВрдбрддрд╛_рдЬрд╛рдВрдЪ рдХреНрд╖рдорддрд╛рдПрдВред NOT NULL рд╢рд░реНрдд рд╡рд╛рд▓реЗ рдХреЙрд▓рдо рдореЗрдВ NaN рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рдмреЗрд╣рддрд░ рд╕реВрдЪрдирд╛ рд╕рд╛рдордЧреНрд░реАред
  • рд╕рддреНрд░ рдЬреЛрдбрд╝ ROWID рдХреЗ рдмрд┐рдирд╛ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
  • рд╕реЗрдХрдВрдб рдХреЗ рдЕрдВрд╢реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдФрд░ рддрд┐рдерд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рд╕рдмрд╕реЗрдХ" рд╕рдВрд╢реЛрдзрдХ рдХреЛ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред
  • рд╕рд░рдгрд┐рдпреЛрдВ рдФрд░ JSON рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░рд┐рдХрд░реНрд╕рди рдЧрд╣рд░рд╛рдИ рдХреЛ 2000 рд╕реЗ рдШрдЯрд╛рдХрд░ 1000 рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбрдХрдбреАрдмреА 0.8.0 рдбреАрдмреАрдПрдордПрд╕ рд░рд┐рд▓реАрдЬ рдХрд╛ рдЧрдарди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рдХреЗ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде SQLite рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрдкреВрд░реНрдг рд╕рд╛рдордЧреНрд░реА рдХреЛ рдПрдХрддреНрд░рд┐рдд рдХрд░рдирд╛ рдпрд╛ рдХрдИ рдмрдбрд╝реА рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рд╡рд┐рд▓рдп рдХрд░рдирд╛ред SQL рднрд╛рд╖рд╛ рдХреА рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдмреЛрд▓реА рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдФрд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЪрд▓рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдХреНрд╖рдорддрд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдЬрдЯрд┐рд▓ рдкреНрд░рдХрд╛рд░реЛрдВ (рд╕рд░рдгрд┐рдпреЛрдВ, рд╕рдВрд░рдЪрдирд╛рдУрдВ, рдпреВрдирд┐рдпрдиреЛрдВ) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди, рдХрдИ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдПрдХ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрди, рдФрд░ CSV, JSON рдФрд░ Parquet рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рд╕реАрдзреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдирд┐рд╖реНрдкрд╛рджрди рд╢рд╛рдорд┐рд▓ рд╣реИред PostgreSQL DBMS рд╕реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

SQLite рд╕реЗ рд╢реЗрд▓ рдХреЛрдб рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░реЛрдЬреЗрдХреНрдЯ PostgreSQL рд╕реЗ рдПрдХ рдкрд╛рд░реНрд╕рд░, MonetDB рд╕реЗ рдПрдХ рджрд┐рдирд╛рдВрдХ рдЧрдгрд┐рдд рдШрдЯрдХ, рд╡рд┐рдВрдбреЛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рдЕрдкрдирд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рд╕реЗрдЧрдореЗрдВрдЯ рдЯреНрд░реА рдПрдЧреНрд░реАрдЧреЗрд╢рди рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд), RE2 рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдХреНрд╡реЗрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝рд░, рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдПрдХ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдПрдХ MVCC рддрдВрддреНрд░ (рдорд▓реНрдЯреА-рд╡рд░реНрдЬрди рдХрдВрдХрд░реЗрдВрд╕реА рдХрдВрдЯреНрд░реЛрд▓) рдФрд░ рд╣рд╛рдЗрдкрд░-рдкрд╛рдЗрдкрд▓рд╛рдЗрдирд┐рдВрдЧ рдХреНрд╡реЗрд░реА рдПрдХреНрдЬрд╝рд┐рдХреНрдпреВрдЯ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рд╡реЗрдХреНрдЯрд░рдХреГрдд рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрди рдЗрдВрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрдпрди, рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдСрдкрд░реЗрд╢рди рдореЗрдВ рдПрдХ рд╕рд╛рде рдореВрд▓реНрдпреЛрдВ рдХреЗ рдмрдбрд╝реЗ рд╕реЗрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдПрдордЖрдИрдЯреА рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

DuckDB рдХреЗ рдирдпреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ:

  • рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕реНрддрдВрднреЛрдВ рдореЗрдВ рдмрджрд▓рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдИ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпрд╛рдБ "PIVOT" рдФрд░ "UNPIVOT" рдЬреЛрдбрд╝реА рдЧрдИрдВред
  • рдбреЗрдЯрд╛ рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп рдмреЗрд╣рддрд░ рд╕рдорд╛рдирд╛рдВрддрд░реАрдХрд░рдгред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, Parquet, CSV рдФрд░ JSON рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп CSV рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рдХрдИ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдкрдврд╝рдирд╛ рдФрд░ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд▓реЗрдЦрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдлрд╝рд╛рдЗрд▓ рдкрдереЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╕рдордп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдкрд░ рдкреБрдирд░рд╛рд╡рд░реНрддреА рд░реВрдк рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "**" рдСрдкрд░реЗрдЯрд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "'рдбреЗрдЯрд╛/рдЧреНрд▓реЛрдм/рдХреНрд░реЙрд▓/рд╕реНрдЯреИрдХрдУрд╡рд░рдлрд╝реНрд▓реЛ/**/*.csv';") рд╕реЗред
  • рд╕рдордп рд╢реНрд░реГрдВрдЦрд▓рд╛ (рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдорд╛рдиреЛрдВ рдХреЗ рд╕реНрд▓рд╛рдЗрд╕) рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдорд░реНрдЬ рдСрдкрд░реЗрд╢рдВрд╕ (рдЬреЙрдЗрди) рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдореЗрдВ рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдорд╛рдирджрдВрдб рд╕рдЯреАрдХ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рд╕рдордп рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдлрд╝реАрд▓реНрдб рдореЗрдВ рдорд╛рдиреЛрдВ рдХрд╛ рдЕрдиреБрдорд╛рдирд┐рдд рдорд┐рд▓рд╛рди рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЙрди рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд╕рдордп рдореЗрдВ 1 рдорд┐рдирдЯ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИ)ред
  • рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рд╡рд┐рд▓рдВрдмрд┐рдд рд▓реЛрдбрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ DBMS рдХреЗ рд▓реЙрдиреНрдЪ рдХреЛ рджрд░реНрдЬрдиреЛрдВ рдЧреБрдирд╛ рддреЗрдЬ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛ рд╣реИред
  • рдкрд╛рдпрдерди рдореЗрдВ рдХрд╕реНрдЯрдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
  • рдЕрдкрд╛рдЪреЗ рдПрд░реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХреЗ рд▓рд┐рдП рдПрдбреАрдмреАрд╕реА (рдПрд░реЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА) рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред
  • рд╕реНрд╡рд┐рдлреНрдЯ рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рд▓рд╛рдЧреВ рдХреА рдЧрдИред
  • рдбрд┐рд╡реАрдЬрди ("/") рдСрдкрд░реЗрдЯрд░ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрджрд▓ рдЧрдпрд╛, рдЬреЛ рдЕрдм рдкреВрд░реНрдгрд╛рдВрдХ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрдЬрд╛рдп рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рдкреВрд░реНрдгрд╛рдВрдХ рд╡рд┐рднрд╛рдЬрди рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдСрдкрд░реЗрдЯрд░ "//" рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкреБрд░рд╛рдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ "SET рдкреВрд░реНрдгрд╛рдВрдХ_рд╡рд┐рднрд╛рдЬрди = рд╕рддреНрдп;" рд╕реЗрдЯ рдХрд░рдХреЗ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рд╕реЙрд░реНрдЯ рдХрд░рддреЗ рд╕рдордп рд╢реВрдиреНрдп рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП рд▓реЗрдЦрд╛рдВрдХрди рдХреА рд╡рд┐рдзрд┐ рдХреЛ "NULLS FIRST" рд╕реЗ "NULLS LAST" рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред NULL рдорд╛рди рдЕрдм рд╕реВрдЪреА рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрдЬрд╛рдп рдЕрдВрдд рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдВрдЧреЗред рдкреБрд░рд╛рдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ "SET default_null_order='nulls_first';" рд╕реЗрдЯ рдХрд░рдХреЗ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдлреЗрд╕рдмреБрдХ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рд╕реАрдЬреА/рдПрд╕рдХреНрдпреВрдПрд▓ рдкреНрд░реЛрдЬреЗрдХреНрдЯ, рдЬреЛ SQLite рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЛрдб рдЬрдирд░реЗрдЯрд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕реАрдЬреА/рдПрд╕рдХреНрдпреВрдПрд▓ рдЖрдкрдХреЛ рдЯреА-рдПрд╕рдХреНрдпреВрдПрд▓ (рдЯреНрд░рд╛рдВрдЬреИрдХреНрдЯ-рдПрд╕рдХреНрдпреВрдПрд▓) рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖ рдмреЛрд▓реА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдорд╛рдирдХ рд╕реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдФрд░ SQLite рдореЗрдВ рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЙрддреНрдкрдиреНрди рд╕рдВрдЧреНрд░рд╣реАрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ C рдХреЛрдб рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд░рдиреЗ рдФрд░ рдЬрдЯрд┐рд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП SQLite C API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╕рдВрдХрд▓рд┐рдд рд╕рдВрдЧреНрд░рд╣рд┐рдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рд╕реА, рдЬрд╛рд╡рд╛ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб C рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ MIT рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ