将SQLite数据库添加到iPhone应用程序

23

我正在学习SQLite,并构建一个iPhone应用程序。但是我想将SQLite数据库添加到我的应用程序中。我有三个教程,但是我不清楚那段代码的含义。

如何将SQLite数据库添加到我的应用程序中?示例代码会是什么样子?


7
为什么不接受一个回答,如果它确实帮助了你呢? - Raj Pawan Gumdal
7个回答

20

首先,您需要创建自己的数据库。
从命令行创建您的数据库文件。

sqlite3 mydb.db

然后在您的数据库中创建表格。

CREATE TABLE tags (id int(5), name varchar(255), created_at datetime, updated_at datetime);

对于您想在数据库中创建的任何表,都需要重复此操作。

然后,您需要将数据库文件包含在项目中。像任何其他现有文件一样,将现有的数据库文件添加到项目中。

接下来,您将不得不链接与数据库交互的框架。这可以在当前的iPhone SDK文件夹下找到。

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/lib/libsqlite3.0.dylib

最后,您必须包含来自以下位置的头文件sqlite3.h:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/include/sqlite3.h

现在,您可以编写代码以从iPhone应用程序内访问sqlite数据库了。


2
请注意,虽然在桌面计算机上创建数据库,然后将其复制到iPhone应用程序中可能是一种方便的做法,但这并非必要。您可以在iPhone应用程序内创建数据库,初始化模式并初始化数据。 - Kristopher Johnson

12

网上有很多信息。

你看过演示应用程序吗?SQLite图书列表 这展示了在SQLite下常见的数据库功能示例。这实际上是使用标准的SQLite C API。

也有可能更适合您的Objective C包装器。 EntropyDB, SQLitePersistenceObjectsFMDB.

我发现这个教程和这个资源列表可能会有所帮助。

最近我一直在使用一个ORM SQLite.net。对我来说,这是捷径,但我是在MonoTouch C#中开发。

Tony


6
我建议你也可以看看FMDB。它使得使用SQLite更加类似于Objective-C/Cocoa。虽然它并不是完整的ORM封装,但它将C API包装成了更易用的形式。

1

http://sqlite.org/docs.html 是一个很好的起点。

如果您更具体地说明您正在尝试做什么以及遇到了什么障碍,那么您可能会得到更有用的帮助。


1
如果您使用Firefox浏览器,有一个方便的插件可用于管理和创建SQLite数据库。

1

您需要将框架链接到数据库以进行交互。这可以在当前iPhone SDK文件夹下找到。

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/lib/libsqlite3.0.dylib

0

CoreData应该有帮助,但我在可导入框架列表中找不到它。

您可以查看iPhone示例,特别是SQLite图书清单示例。


CoreData 在 iPhone 上不可用。 - Daniel Hill
1
CoreData 可在 SDK 3.00 beta 版本中使用。 - AnthonyLambert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接