我正在尝试编写一个应用程序,其中有两个用于输入的文本字段。从文本字段中获取的输入被初始化为一个字符串。所以我想要完成的是:
- 创建一个将保存在 Xcode 项目中的 SQLite 数据库(文件)(我不确定它可以保存到哪里,但我需要能够读取和写入它)。
- 然后我想将字符串(来自文本字段输入)放入 SQLite 表中,该表将只有两个字段(为简单起见)。我正在使用一个按钮来接受来自文本字段的输入,将输入放入字符串中,然后将字符串的值放入标签中。
- 我最终会想要将文本字段中的字符串放入表中,然后读取表以“抓取”字符串并将它们显示到标签中。所有这一切都可以通过点击一个按钮来完成。
我意识到这是非常具体的,但我一直很难找到任何简单的方法来完成它。我是 iOS 开发的新手,如果有人能尽可能具体和详细,或者至少给我一些可以教我如何实现这一目标的资源,我将不胜感激。
我使用的是 Xcode v4.3.2,我不使用 Storyboard 或 ARC。我试图尽可能详细,但如您所知,我的目标非常简单。
我已经筋疲力尽了,我很感激能得到的所有帮助。
谢谢! -马特
最佳答案
- 创建数据库文件:只需将 data.sqlite 文件放入您的 xcode 项目中,就像放置任何其他类或图像资源一样。请注意,您必须在应用程序安装后将文件复制到可写目录。看看createeditablecopyofdatabaseifneeded .
- 用sqlite3_open打开你的数据库关于您的新数据库位置。
- 使用 sqlite3_prepare_v2 查询数据库
一个简单的查询片段如下所示:
NSString *querystring;
// create your statement
querystring= [NSString stringWithFormat:@"SELECT text1, text2 FROM datatable;"];
const char *sql = [querystring UTF8String];
NSString *text1 = nil;
NSString *text2 = nil;
if (sqlite3_prepare_v2(db, sql, -1, &statement, NULL)!=SQLITE_OK){
NSLog(@"sql problem occured with: %s", sql);
NSLog(@"%s", sqlite3_errmsg(db));
}
else
{
// you could handle multiple rows here
while (sqlite3_step(statement) == SQLITE_ROW) {
text1 = [NSString stringWithUTF8String:(char*)sqlite3_column_text(statement, 0)];
text2 = [NSString stringWithUTF8String:(char*)sqlite3_column_text(statement, 1)];
} // while
}
sqlite3_finalize(statement);
// go on with putting data where you want
关于ios - 将 SQLite 与 iOS 一起使用……非常初学者的程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10438089/