30

iOS 包含什么版本的 Sqlite?

4

8 回答 8

38

这个 wiki有最新的列表,目前是:

╔═════════════╦════════════════╗
║ iOS Version ║ SQLite Version ║
╠═════════════╬════════════════╣
║ 2.2         ║ 3.4.0          ║
║ 3.1.3       ║ 3.6.12         ║
║ 4.0.2       ║ 3.6.22         ║
║ 4.1.0       ║ 3.6.23.2       ║
║ 4.2.0       ║ 3.6.23.2       ║
║ 5.1.1       ║ 3.7.7          ║
║ 6.0.1       ║ 3.7.13         ║
║ 7.0         ║ 3.7.13         ║
║ 7.0.6       ║ 3.7.13         ║
║ 8.0.2       ║ 3.7.13         ║
║ 8.2         ║ 3.8.5          ║
║ 9.0         ║ 3.8.8          ║
║ 9.3.1       ║ 3.8.10.2       ║
║ 10.0 beta 2 ║ 3.13.0         ║
║ 10.0 GM     ║ 3.14.0         ║
║ 10.2        ║ 3.14.0         ║
║ 10.3.1      ║ 3.16.0         ║
║ 11.0        ║ 3.19.3         ║
║ 12.0        ║ 3.24.0         ║
║ 12.1        ║ 3.24.0         ║
║ 13.1.3      ║ 3.28.0         ║
║ 14.1        ║ 3.32.3         ║
║ 14.2        ║ 3.32.3         ║
╚═════════════╩════════════════╝
╔═══════════════╦════════════════╗
║ macOS Version ║ SQLite Version ║
╠═══════════════╬════════════════╣
║ 10.9          ║ 3.7.13         ║ 
║ 10.10         ║ 3.8.5          ║ 
║ 10.10.3       ║ 3.8.5          ║ 
║ 10.11         ║ 3.8.10.2       ║ 
║ 10.12         ║ 3.14.0         ║ 
║ 10.13         ║ 3.19.3         ║ 
║ 10.14.2       ║ 3.24.0         ║ 
╚═══════════════╩════════════════╝

Iulian Onofrei 于 2020 年 12 月 1 日编辑了该维基

于 2016-03-14T17:06:08.877 回答
12

在各种 iOS 版本上使用 SELECT sqlite_version():

来自互联网:

2.2: 3.4.0
3.1.3: 3.6.12
4.0.2: 3.6.22
4.1.0: 3.6.23.2
4.2.0: 3.6.23.2

我现在刚刚测试:

6.0.1: 3.7.13
于 2013-01-11T23:08:45.410 回答
10

我刚刚检查了 iOS 7:

7.0: 3.7.13
于 2013-09-20T03:39:26.087 回答
7

做就是了:

p (const char*) sqlite3_libversion()

在您想知道 sqlite 版本的设备上运行应用程序(链接到 sqlite lib)的调试器中。

在 iOS 8.0.2 iPhone 5s 上,我得到了 3.7.13,所以根据其他答案中的报告,6.0 版使用相同版本,他们似乎有一段时间没有更改版本。

于 2014-10-07T20:59:44.213 回答
3

SQLite has been updated in iOS 8.2 to version 3.8.5

于 2015-05-05T17:42:41.057 回答
2

使用以下内容打印代码中的版本。您可以将以下定义为单独的仅调试功能,并didFinishLaunchingWithOptions在您的 appDelegate 中调用它。

#if DEBUG
// Int representing version; e.g. "3016000" for macOS 10.12.4
int sqliteVersion = sqlite3_libversion_number();
NSLog(@"Sqlite Version: %d", sqliteVersion);

// String representing version; e.g. "3.19.3" for iOS 11
const char *sqliteLibVersion = sqlite3_libversion();
NSString *sqliteLibVersionStr = [NSString stringWithUTF8String:sqliteLibVersion];
NSLog(@"Sqlite Lib Version: %@", sqliteLibVersionStr);

// String representing sourceId; e.g. "2017-06-27 16:48:08 2b09...2e2377b" on iOS11
const char *sqliteSourceid = sqlite3_sourceid();
NSString *sqliteSourceidStr = [NSString stringWithUTF8String:sqliteSourceid];
NSLog(@"Sqlite SourceID: %@", sqliteSourceidStr);
#endif

或者,sqlite3.h直接在 Xcode 中查看。对于 iOS 11:

#define SQLITE_VERSION        "3.19.3"
#define SQLITE_VERSION_NUMBER 3019003
#define SQLITE_SOURCE_ID      "2017-06-27 16:48:08 2b09...2e2377b"

sqlite3.h还有其他可用于调试目的的方法。

于 2017-11-14T23:13:02.983 回答
2

使用 iOS 14 更新 2020 年 11 月

  ╔═════════════╦════════════════╗
  ║ iOS Version ║ SQLite Version ║
  ╠═════════════╬════════════════╣
  ║ 13.1.3      ║ 3.28.0         ║
  ╠═════════════╬════════════════╣
  ║ 14.1        ║ 3.32.3         ║
  ╚═════════════╩════════════════╝
于 2019-11-14T17:08:24.540 回答
1

在 iOS 9.0 中,SQLite 版本是3.8.10.2

于 2015-11-28T03:48:48.913 回答