DBMS SQLite 3.35 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди

SQLite 3.35 рдЪреЗ рдкреНрд░рдХрд╛рд╢рди, рдкреНрд▓рдЧ-рдЗрди рд▓рд╛рдпрдмреНрд░рд░реА рдореНрд╣рдгреВрди рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗрд▓реЗ рд╣рд▓рдХреЗ DBMS, рдкреНрд░рдХрд╛рд╢рд┐рдд рдЭрд╛рд▓реЗ рдЖрд╣реЗ. SQLite рдХреЛрдб рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореНрд╣рдгреВрди рд╡рд┐рддрд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рдЙрджрд╛. рдирд┐рд░реНрдмрдВрдзрд╛рдВрд╢рд┐рд╡рд╛рдп рдЖрдгрд┐ рдХреЛрдгрддреНрдпрд╛рд╣реА рд╣реЗрддреВрд╕рд╛рдареА рд╡рд┐рдирд╛рдореВрд▓реНрдп рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ. SQLite рдбреЗрд╡реНрд╣рд▓рдкрд░рд╕рд╛рдареА рдЖрд░реНрдерд┐рдХ рд╕рд╣рд╛рдпреНрдп рдЦрд╛рд╕ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХрдиреНрд╕реЛрд░реНрдЯрд┐рдпрдорджреНрд╡рд╛рд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ Adobe, Oracle, Mozilla, Bentley рдЖрдгрд┐ Bloomberg рд╕рд╛рд░рдЦреНрдпрд╛ рдХрдВрдкрдиреНрдпрд╛рдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рдЖрд╣реЗ.

рдореБрдЦреНрдп рдмрджрд▓:

  • рдПрд╕рдХреНрдпреВрдПрд▓ рдордзреНрдпреЗ рд╡рд╛рдкрд░рддрд╛ рдпреЗрдгрд╛рд░реА рдЕрдВрдЧрднреВрдд рдЧрдгрд┐рдд рдХрд╛рд░реНрдпреЗ (рд▓реЙрдЧ2(), cos(), tg(), exp(), ln(), pow(), рдЗ.) рдЬреЛрдбрд▓реА. рдЕрдВрдЧрднреВрдд рдХрд╛рд░реНрдпреЗ рд╕рдХреНрд╖рдо рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА "-DSQLITE_ENABLE_MATH_FUNCTIONS" рдкрд░реНрдпрд╛рдпрд╛рд╕рд╣ рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
  • рдЯреЗрдмрд▓рдордзреВрди рдХреЙрд▓рдо рдХрд╛рдвреВрди рдЯрд╛рдХрдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рджрд┐рд▓реЗрд▓реНрдпрд╛ рдХреЙрд▓рдордордзреНрдпреЗ рдкреВрд░реНрд╡реА рд╕реНрдЯреЛрдЕрд░ рдХреЗрд▓реЗрд▓рд╛ рдбреЗрдЯрд╛ рд╕рд╛рдл рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА тАЬALTER TABLE DROP COLUMNтАЭ рдПрдХреНрд╕реНрдкреНрд░реЗрд╢рдирд╕рд╛рдареА рд╕рдорд░реНрдерди рд▓рд╛рдЧреВ рдХреЗрд▓реЗ.
  • UPSERT (рдЬреЛрдбрд╛-рдХрд┐рдВрд╡рд╛-рд╕реБрдзрд╛рд░рд┐рдд) рдСрдкрд░реЗрд╢рдирдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ, "рдЗрдиреНрд╕рд░реНрдЯ ... рдСрди рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ рдбреВ рдирдерд┐рдВрдЧ/рдЕрдкрдбреЗрдЯ" рд╕рд╛рд░рдЦреНрдпрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддреАрджреНрд╡рд╛рд░реЗ рддреНрд░реБрдЯреАрдХрдбреЗ рджреБрд░реНрд▓рдХреНрд╖ рдХрд░рдгреНрдпрд╛рд╕ рдХрд┐рдВрд╡рд╛ рдЬреЛрдбрдгреЗ рдЕрд╢рдХреНрдп рдЕрд╕рд▓реНрдпрд╛рд╕ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдРрд╡рдЬреА рдЕрдкрдбреЗрдЯ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрдКрди. тАЬINSERTтАЭ рджреНрд╡рд╛рд░реЗ рдбреЗрдЯрд╛ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд░реЗрдХреЙрд░реНрдб рдЖрдзреАрдЪ рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдкрдг INSERT рдРрд╡рдЬреА рдЕрдкрдбреЗрдЯ рдХрд░реВ рд╢рдХрддрд╛). рдирд╡реАрди рдЖрд╡реГрддреНрддреА рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд ONFLICT рдмреНрд▓реЙрдХреНрд╕ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ, рдЬреНрдпрд╛рд╡рд░ рдХреНрд░рдорд╛рдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗрд▓реА рдЬрд╛рдИрд▓. рд╢реЗрд╡рдЯрдЪрд╛ "рдСрди рдХреЙрдиреНрдлреНрд▓рд┐рдХреНрдЯ" рдмреНрд▓реЙрдХ "рдбреВ рдЕрдкрдбреЗрдЯ" рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд┐рд░реЛрдзрд╛рднрд╛рд╕ рдирд┐рд░реНрдзрд╛рд░рдг рдкреЕрд░рд╛рдореАрдЯрд░ рд╡рдЧрд│рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ.
  • DELETE, INSERT рдЖрдгрд┐ UPDATE рдСрдкрд░реЗрд╢рдиреНрд╕ рд░рд┐рдЯрд░реНрдирд┐рдВрдЧ рдПрдХреНрд╕реНрдкреНрд░реЗрд╢рдирд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддрд╛рдд, рдЬреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рд╣рдЯрд╡рд▓реЗрд▓реНрдпрд╛, рдШрд╛рддрд▓реЗрд▓реНрдпрд╛ рдХрд┐рдВрд╡рд╛ рд╕реБрдзрд╛рд░рд┐рдд рд░реЗрдХреЙрд░реНрдбрдордзреАрд▓ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, "рдЗрдиреНрд╕рд░реНрдЯ рдЗрди ... рд░рд┐рдЯрд░реНрдирд┐рдВрдЧ рдЖрдпрдбреА" рд╣реА рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдЬреЛрдбрд▓реЗрд▓реНрдпрд╛ рдУрд│реАрдЪрд╛ рдЖрдпрдбреЗрдВрдЯрд┐рдлрд╛рдпрд░ рджреЗрдИрд▓ рдЖрдгрд┐ "рдЕрдкрдбреЗрдЯ ... рд╕реЗрдЯ рдХрд┐рдВрдордд = рдХрд┐рдВрдордд * 1.10 рд░рд┐рдЯрд░реНрдирд┐рдВрдЧ рдХрд┐рдВрдордд" рдмрджрд▓рд▓реЗрд▓реА рдХрд┐рдВрдордд рдкрд░рдд рдХрд░реЗрд▓.
  • рдХреЙрдорди рдЯреЗрдмрд▓ рдПрдХреНрд╕реНрдкреНрд░реЗрд╢рдиреНрд╕ (CTE) рд╕рд╛рдареА, рдЬреЗ рд╡рд┐рде рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╡рд╛рдкрд░реВрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реНрдпрд╛ рддрд╛рддреНрдкреБрд░рддреНрдпрд╛ рдирд╛рдорд╛рдВрдХрд┐рдд рдкрд░рд┐рдгрд╛рдо рд╕реЗрдЯрдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддрд╛рдд, "рдордЯреЗрд░рд┐рдЕрд▓рд╛рдЗрдЬреНрдб" рдЖрдгрд┐ "рдиреЙрдЯ рдордЯреЗрд░рд┐рдЕрд▓рд╛рдЗрдЬреНрдб" рдореЛрдбрдЪреНрдпрд╛ рдирд┐рд╡рдбреАрд▓рд╛ рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ. тАЬрдордЯреЗрд░рд┐рдЕрд▓рд╛рдЗрдЬреНрдбтАЭ рдореНрд╣рдгрдЬреЗ рд╡реНрд╣реНрдпреВрдордзреНрдпреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓реА рдХреНрд╡реЗрд░реА рд╡реЗрдЧрд│реНрдпрд╛ рдлрд┐рдЬрд┐рдХрд▓ рдЯреЗрдмрд▓рдордзреНрдпреЗ рдХреЕрд╢ рдХрд░рдгреЗ рдЖрдгрд┐ рдирдВрддрд░ рдпрд╛ рдЯреЗрдмрд▓рдордзреВрди рдбреЗрдЯрд╛ рдЖрдгрдгреЗ рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╡реЗрд│реА рд╡реНрд╣реНрдпреВрдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХреЗрд▓реНрдпрд╛рд╡рд░ тАЬрдиреЙрдЯ рдордЯреЗрд░рд┐рдЕрд▓рд╛рдЗрдЬреНрдбтАЭ рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреНрд╡реЗрд░реА рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддреАрд▓. SQLite рдореВрд│рдд: "рдиреЙрдЯ рдордЯреЗрд░рд┐рдпрд▓рд╛рдЗрдЬреНрдб" рд╡рд░ рдбреАрдлреЙрд▓реНрдЯ рд╣реЛрддреЗ, рдкрд░рдВрддреБ рдЖрддрд╛ рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рд╡реЗрд│рд╛ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ CTE рд╕рд╛рдареА "рдордЯреЗрд░рд┐рдЕрд▓рд╛рдЗрдЬреНрдб" рдордзреНрдпреЗ рдмрджрд▓рд▓реЗ рдЖрд╣реЗ.
  • рдбреЗрдЯрд╛рдмреЗрд╕реЗрд╕рд╡рд░ рд╡реНрд╣реЕрдХреНрдпреВрдо рдСрдкрд░реЗрд╢рди рдХрд░рддрд╛рдирд╛ рдХрдореА рдореЗрдорд░реА рд╡рд╛рдкрд░ рдЬреНрдпрд╛рдордзреНрдпреЗ рдЦреВрдк рдореЛрдареЗ TEXT рдХрд┐рдВрд╡рд╛ BLOB рдореВрд▓реНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗрдд.
  • рдСрдкреНрдЯрд┐рдорд╛рдпрдЭрд░ рдЖрдгрд┐ рдХреНрд╡реЗрд░реА рдкреНрд▓реЕрдирд░рдЪреЗ рдХрд╛рд░реНрдпрдкреНрд░рджрд░реНрд╢рди рд╡рд╛рдврд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдХрд╛рд░реНрдп рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ:
    • "IN" рдЕрднрд┐рд╡реНрдпрдХреНрддреАрд╕рд╣ рдХрд┐рдорд╛рди рдЖрдгрд┐ рдХрдорд╛рд▓ рдХрд╛рд░реНрдпреЗ рд╡рд╛рдкрд░рддрд╛рдирд╛ рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди рдЬреЛрдбрд▓реЗ.
    • EXISTS рд╡рд┐рдзрд╛рдирд╛рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрд▓рд╛ рд╡реЗрдЧ рдЖрд▓рд╛ рдЖрд╣реЗ.
    • JOIN рдЪрд╛ рднрд╛рдЧ рдореНрд╣рдгреВрди рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ рд╕рд░реНрд╡ рдЕрднрд┐рд╡реНрдпрдХреНрддреА UNION рдордзреАрд▓ рд╕рдмрдХреНрд╡реЗрд░реАрдВрдЪрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рд▓рд╛рдЧреВ рдХреЗрд▓рд╛.
    • рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ IS NOT NULL рдЕрднрд┐рд╡реНрдпрдХреНрддреАрд╕рд╛рдареА рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддреЗ.
    • "x IS NULL" рдЖрдгрд┐ "x IS NOT NULL" рд╣реЗ "NOT NULL" рд╡рд┐рд╢реЗрд╖рддрд╛ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕реНрддрдВрднрд╛рдВрд╕рд╛рдареА FALSE рдХрд┐рдВрд╡рд╛ TRUE рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХреЗрд▓реЗ рдЕрд╕рд▓реНрдпрд╛рдЪреА рдЦрд╛рддреНрд░реА рдХрд░рддреЗ.
    • рдСрдкрд░реЗрд╢рдирдиреЗ рдкрд░рджреЗрд╢реА рдХреАрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрддрдВрдн рдмрджрд▓рд▓реЗ рдирд╕рд▓реНрдпрд╛рд╕ рдЕрджреНрдпрддрдирд╛рдордзреНрдпреЗ рдкрд░рджреЗрд╢реА рдХреА рддрдкрд╛рд╕рдгреЗ рд╡рдЧрд│рд╛.
    • WHERE рдмреНрд▓реЙрдХрдЪреЗ рдХрд╛рд╣реА рднрд╛рдЧ рд╡рд┐рдВрдбреЛ рдлрдВрдХреНрд╢рдиреНрд╕ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рдмрдХреНрд╡реЗрд░реАрдВрдордзреНрдпреЗ рд╣рд▓рд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рдЖрд╣реЗ, рдЬреЛрдкрд░реНрдпрдВрдд рддреЗ рднрд╛рдЧ рд╕реНрдерд┐рд░рд╛рдВрдХ рдЖрдгрд┐ рд╡рд┐рдВрдбреЛ рдлрдВрдХреНрд╢рдиреНрд╕рдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд░реНтАНрдпрд╛ PARTITION BY рдмреНрд▓реЙрдХреНрд╕рдордзреАрд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддреАрдВрдЪреНрдпрд╛ рдкреНрд░рддреАрдВрдкрд░реНрдпрдВрдд рдорд░реНрдпрд╛рджрд┐рдд рдЖрд╣реЗрдд.
  • рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлреЗрд╕рдордзреНрдпреЗ рдмрджрд▓:
    • ".filectrl data_version" рдХрдорд╛рдВрдб рдЬреЛрдбрд▓реА.
    • ".рдПрдХрджрд╛" рдЖрдгрд┐ ".рдЖрдЙрдЯрдкреБрдЯ" рдЖрджреЗрд╢ рдЖрддрд╛ рдЕрдирд╛рдорд┐рдд рдкрд╛рдИрдкреНрд╕ ("|") рд╡рд╛рдкрд░реВрди рд╣рдБрдбрд▓рд░рд▓рд╛ рдЖрдЙрдЯрдкреБрдЯ рдкрд╛рд╕ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдорд░реНрдерди рджреЗрддрд╛рдд.
    • "stmt" рдЖрдгрд┐ "vmstep" рдпреБрдХреНрддрд┐рд╡рд╛рдж ".stats" рдХрдорд╛рдВрдбрдордзреНрдпреЗ рдПрдХреНрд╕рдкреНрд░реЗрд╢рдиреНрд╕ рдЖрдгрд┐ рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрди рдХрд╛рдЙрдВрдЯрд░рд╡рд░ рдЖрдХрдбреЗрд╡рд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд.

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛