從 版本 3.9.0(2015-10-14)開始,SQLite 使用 語意化版本。在那之前,SQLite 使用包含兩個到四個數字的版本識別碼。
從 3.9.0 開始的所有 SQLite 版本都使用 X.Y.Z 格式的三位數字「語意化版本」。第一個數字 X 僅在發生破壞向後相容性的變更時才會增加。X 的目前值為 3,而 SQLite 開發人員計畫至少在 2050 年之前支援目前的 SQLite 資料庫檔案格式、SQL 語法和 C 介面。因此,可以預期未來幾十年的所有 SQLite 版本都將以「3」開頭。
第二個數字 Y 會在透過新增新功能而破壞向前相容性時增加。預計未來大多數的 SQLite 版本都會增加第二個數字 Y。每當 Y 增加時,Z 都會重設為零。
第三個數字 Z 會在僅包含實作效能增強和/或錯誤修正的小變更的版本中增加。
過去五年(2010-2015)SQLite 的增強速度大約是每年增加 Y 6 次。由 SQLITE_VERSION_NUMBER 和 sqlite3_libversion_number() 使用的編號格式允許版本號碼高達 3.999.999,這對於 SQLite 在 2050 年的計畫終止支援日期來說已經綽綽有餘。然而,目前的 tarball 命名慣例僅為 Y 保留兩個數字,因此下載的命名格式需要在 2030 年左右進行修改。
這個歷史版本編號系統使用一個二位、三位或四位的版本:W.X、W.X.Y 或 W.X.Y.Z。W 是檔案格式:1、2 或 3。X 是主要版本。Y 是次要版本。Z 僅用於修正錯誤的修補程式版本。
SQLite 有三個歷史檔案格式。SQLite 1.0 到 1.0.32 使用 gdbm 函式庫作為其儲存引擎。SQLite 2.0.0 到 2.8.17 使用一個自訂的 b 樹儲存引擎,僅支援文字鍵和資料。所有現代版本的 SQLite(3.0.0 至最新版本)使用一個 b 樹儲存引擎,完全支援二進位資料和 Unicode。
這個主要版本號碼 X 過去僅在對程式碼進行重大且重要的變更時才會遞增。什麼構成「重大且重要」是主觀的。3.6.23 到 3.7.0 的變更是新增對 WAL 模式 的支援。3.7.17 到 3.8.0 的變更是一個稱為 下一代查詢規劃器 的重寫結果。
次要版本號碼 Y 過去在新增功能和/或新介面(不會顯著變更程式碼結構)時遞增。新增 共用表格運算式、部分索引 和 運算式索引 都是「次要」變更的範例。同樣地,「主要」和「次要」之間的區別是主觀的。
修補程式等級 Z 過去僅用於僅變更少數程式碼行的錯誤修正版本。
此頁面最後修改於 2022-01-08 05:02:57 UTC