Veröffentlichung der SQLite-Datenbank 3.51

Die SQLite-Version 3.51 wurde veröffentlicht, eine leichtgewichtige Datenbank, die als dynamische Bibliothek bereitgestellt wird. Der Code von SQLite wird als Gemeingut (public domain) verteilt, d.h. er kann ohne EinschrĂ€nkungen und kostenlos fĂŒr jegliche Zwecke verwendet werden. Die finanzielle UnterstĂŒtzung der SQLite-Entwickler erfolgt durch ein eigens gegrĂŒndetes Konsortium.

HauptÀnderungen:

  • Neue JSON-Funktionen jsonb_each() und jsonb_tree() wurden hinzugefĂŒgt, die sich von den zuvor verfĂŒgbaren Funktionen json_each() und json_tree() dadurch unterscheiden, dass sie fĂŒr Daten des Typs Array oder Objekt einen JSONB-Wert zurĂŒckgeben.
  • Der Code der Erweiterungen carray und percentile wurde in die Basisdatei 'sqlite3.c' mit dem eingebetteten SQLite-Code verschoben. StandardmĂ€ĂŸig sind diese ErgĂ€nzungen deaktiviert und erfordern bei der Kompilierung die Angabe der Parameter '-DSQLITE_ENABLE_CARRAY' und '-DSQLITE_ENABLE_PERCENTILE'.
  • Die Schnittstelle zur Verwendung von SQLite in Skripten der Programmiersprache Tcl wurde verbessert. Der Befehl 'eval' hat ein Flag '-asdict' erhalten, um Zeilen mit dem Typ 'dict' anstelle von 'array' zu setzen. Es wurde die Möglichkeit hinzugefĂŒgt, benutzerdefinierte Funktionen zu unterbrechen, um den Wert NULL zurĂŒckzugeben.
  • Änderungen der Befehlszeilenschnittstelle:
    • Die Genauigkeit des Befehls '.timer' wurde auf Mikrosekunden erhöht;
    • In den Formatierungsmodi 'box' und 'column' wird die UnterstĂŒtzung fĂŒr doppelt breite Zeichen realisiert;
    • Der Befehl '.imposter' kann nun im Nur-Lesen-Modus imposter-Tabellen bereitstellen (die den Zugriff auf Daten im Index wie bei einer Tabelle erlauben), die mit der VACUUM-Operation arbeiten und nicht mit dem Flag '—unsafe-testing' ausgefĂŒhrt werden mĂŒssen;
    • In das sqlite-Utility und den Befehl '.open' wurde die Option '—ifexists' hinzugefĂŒgt.
    • Die maximale Breite der Zeile, die mit dem Befehl '.width' eingestellt wird, ist auf 30000 Zeichen begrenzt.
  • Es wurden Leistungsoptimierungen vorgenommen:
    • Die CPU-Belastung bei der Fixierung von Transaktionen mit Lesezugriff wurde verringert;
    • Die Bestimmung von JOIN-Operationen, die aufgrund des Fehlens von Zeilen in einer oder mehreren Tabellen keine Zeilen zurĂŒckgeben, wurde verbessert;
    • Die AusfĂŒhrung von skalaren Unterabfragen, die das Ergebnis nicht beeinflussen, wurde ausgeschlossen;
    • Die Leistung von Fensterfunktionen in Abfragen mit dem Ausdruck 'BETWEEN 😡 FOLLOWING AND :y FOLLOWING' und einem sehr hohen Wert ':y' wurde beschleunigt.
  • Pragma 'PRAGMA wal_checkpoint=NOOP' und die API-Funktion sqlite3_wal_checkpoint() zur Fixierung von Änderungen im WAL-Protokoll wurden hinzugefĂŒgt.
  • Im API wurden die Funktionen sqlite3_set_errmsg() und sqlite3_db_status64() hinzugefĂŒgt.
  • In der JavaScript/WASM-Version von SQLite wurde die UnterstĂŒtzung fĂŒr den Build in WebAssembly mit 64-Bit-ZeilenzĂ€hlern implementiert.
  • Die WiderstandsfĂ€higkeit gegen BeschĂ€digungen von Datenbanken in Anwendungen, die POSIX-Sperren ĂŒber den Aufruf close() entfernen, wurde erhöht.
  • Die UnterstĂŒtzung der Plattform VxWorks wurde verbessert.

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster