2

我正在尝试从 sqlite3 数据库中捕获数据并将它们列出在 UITableView 中。我已经添加了 libsqlite3 框架,但是当我运行它时,我得到了 10 个错误,每个 sqlite 行一个。我收到的消息之一是:

"_sqlite3_close", referenced from:
 -[AppDelegate initializeDatabase] in AppDelegate.o

几乎每条消息都是这样,但使用不同的 sql 行。initializeDatabase 是打开数据库的方法。

有什么问题?

4

1 回答 1

1

看起来好像您的标头搜索路径中有 libsqlite 标头,但 sqlite 库本身并未链接到您的目标。

  • 单击应用程序的目标。
  • 打开构建阶段选项卡
  • 选择“Link Binary with Libraries”,并添加 sqlite

在此处输入图像描述

相反,然后使用 raw-C 接口到 sqlite,这非常冗长,您可能希望使用 Objective-C 包装器。一种流行的包装器称为FMDB,可以使用流行的CocoaPods库管理器工具快速安装该库。

CocoaPods 将通过自动链接您的库以及任何传递依赖项(库使用的库)来节省您的时间。虽然这非常方便,但逐步了解幕后发生的事情仍然很重要,因此请尝试手动设置一些库,就像您所做的那样。

于 2013-11-01T08:49:41.917 回答