SQLite 3.33.0 發布 使用量最大的數據庫引擎

SQLite 3.33.0 發布了,SQLite 是一個 C 實現的 SQL 數據庫引擎,它的特點是小型、快速、自包含、高可靠性和功能齊全。SQLite 嵌入在所有手機和大多數計算機中,也捆綁在為數眾多的其它應用中,是世界上使用量最大的數據庫引擎。

SQLite 3.33.0 發布 使用量最大的數據庫引擎

此版本更新內容包括:

  1. 支持遵循 PostgreSQL 語法的 UPDATE FROM:

  • UPDATE-FROM 的想法是對 SQL 的擴展,它允許 UPDATE 語句由數據庫中的其他表驅動。使用 UPDATE-FROM,可以將目標表與數據庫中的其他表連接起來,以幫助計算需要更新的行以及這些行上的新值。

  • 將數據庫文件的最大大小增加到 281 TB。

  • 擴展了 PRAGMA integrity_check 語句,以便可以選擇將其限制為僅驗證單個表及其索引,而不是驗證整個數據庫文件。

  • 添加了用於執行任意精度十進制算術的十進制擴展名。

  • 增強 ieee754 擴展,以使用 IEEE 754 binary64 數字。

  • CLI 增強功能:

    1. 添加了四個新的輸出模式:「box」、「json」、「markdown」 和 「table」。

    2. 「column」輸出模式會自動擴展列以包含最長的輸出行,如果之前未設置,則自動打開「.header」。

    3. 「quote」輸出模式支持「.separator」。

    4. CLI 內置了十進制擴展名和 ieee754 擴展名。

  • 改進 Query planner:

    1. 添加了使用 INDEXED BY 查找查詢的全索引掃描(full-index-scan)查詢計劃的功能,該計劃以前會因「無查詢解決方案」而失敗。

    2. 盡管存在錯誤信息,但可以更好地檢測丟失,不完整和/或不可靠的 sqlite_stat1 數據,並生成良好的查詢計劃。

    3. 提高了查詢性能,例如「SELECT min(x) FROM t WHERE y IN (?,?,?)」(假設在 t(x,y) 上具有索引)。

  • WAL 模式下,如果寫入器崩潰並使 shm 文件處於不一致狀態,則即使存在活動的讀取事務,後續事務現在也可以恢復 shm 文件。在此版本之前,該情況下的 shm 文件恢復將導致 SQLITE_PROTOCOL 錯誤。

  • 更新說明:

    https://sqlite.org/releaselog/3_33_0.html

    來源:cnBeta