ืžื”ื“ื•ืจืช SQLite 3.36

ื”ื•ืฆืืช SQLite 3.36, DBMS ืงืœ ืžืฉืงืœ ืฉืชื•ื›ื ืŸ ื›ืกืคืจื™ื™ืช ืคืœืื’ื™ืŸ, ืคื•ืจืกืžื”. ืงื•ื“ SQLite ืžื•ืคืฅ ื‘ืจืฉื•ืช ื”ืฆื™ื‘ื•ืจ, ื›ืœื•ืžืจ. ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ืœืœื ื”ื’ื‘ืœื•ืช ื•ืœืœื ืชืฉืœื•ื ืœื›ืœ ืžื˜ืจื”. ืชืžื™ื›ื” ืคื™ื ื ืกื™ืช ืœืžืคืชื—ื™ SQLite ื ื™ืชื ืช ืขืœ ื™ื“ื™ ืงื•ื ืกื•ืจืฆื™ื•ื ืฉื ื•ืฆืจ ื‘ืžื™ื•ื—ื“, ื”ื›ื•ืœืœ ื—ื‘ืจื•ืช ื›ืžื• ืื“ื•ื‘ื™, ืื•ืจืงืœ, ืžื•ื–ื™ืœื”, ื‘ื ื˜ืœื™ ื•ื‘ืœื•ืžื‘ืจื’.

ืฉื™ื ื•ื™ื™ื ืขื™ืงืจื™ื™ื:

  • ื”ืคืœื˜ ืฉืœ ื”ืคืงื•ื“ื” EXPLAIN QUERY PLAN ื ืขืฉื” ืงืœ ื™ื•ืชืจ ืœื”ื‘ื ื”.
  • ืžื‘ื˜ื™ื— ืฉื ื•ืฆืจืช ืฉื’ื™ืื” ื‘ืขืช ื ื™ืกื™ื•ืŸ ืœื’ืฉืช ืœ-rowid ื‘-VIEW ืื• ื‘ืฉืื™ืœืชืช ืžืฉื ื”. ื›ื“ื™ ืœื”ื—ื–ื™ืจ ืืช ื”ื™ื›ื•ืœืช ืœื’ืฉืช ืœ-rowid ืœืชืฆื•ื’ื•ืช, ื ื™ืชื ืช ืืคืฉืจื•ืช ื”ื”ืจื›ื‘ื” "-DSQLITE_ALLOW_ROWID_IN_VIEW"
  • ื”ืžืžืฉืงื™ื sqlite3_deserialize() ื•-sqlite3_serialize() ืžื•ืคืขืœื™ื ื›ื‘ืจื™ืจืช ืžื—ื“ืœ. ื›ื“ื™ ืœื”ืฉื‘ื™ืช, ืืคืฉืจื•ืช ื”ื”ืจื›ื‘ื” "-DSQLITE_OMIT_DESERIALIZE" ืžืกื•ืคืงืช
  • VFS "memdb" ืžืืคืฉืจ ืฉื™ืชื•ืฃ ืฉืœ ืžืกื“ ื ืชื•ื ื™ื ื‘ื–ื™ื›ืจื•ืŸ ืขืœ ืคื ื™ ื—ื™ื‘ื•ืจื™ื ืฉื•ื ื™ื ืœืื•ืชื• ืชื”ืœื™ืš ื›ืœ ืขื•ื“ ืฉื ืžืกื“ ื”ื ืชื•ื ื™ื ืžืชื—ื™ืœ ื‘-"/".
  • ื”ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ "EXISTS-to-IN" ืฉื”ื•ืฆื’ื” ื‘ืžื”ื“ื•ืจื” ื”ืื—ืจื•ื ื”, ืฉื”ืื˜ื” ื›ืžื” ืฉืื™ืœืชื•ืช, ื”ื•ื—ื–ืจื”.
  • ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืœืฉื™ืœื•ื‘ ื‘ื“ื™ืงื” ืžืชืžื“ืช ื”ื•ืชืืžื” ืœืขื‘ื•ื“ื” ืขื ืฉืื™ืœืชื•ืช ืœืœื ืžื™ื–ื•ื’ (join).
  • ื”ืจื—ื‘ื” REGEXP ื›ืœื•ืœื” ื‘-CLI.

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”