我尝试在iPhone和所有其他工作上做一个插入语句,但我尝试这个,之后我尝试绑定值,但我得到错误21,似乎发生了因为stmt变量是在准备0x00之后(null我认为) 但不知道发生了什么
sqlite3 *database;
sqlite3_open([pathDb UTF8String], &database);
sqlite3_stmt *stmt;
NSString *insert = @"";
if ([model.ident intValue] != -1)
{
insert = @"UPDATE Blubb SET Key=? WHERE Id = ?";
}
else
{
insert = @"INSERT INTO Blubb (Id, Field,KeyLastUpdate,SortNr) VALUES (?,NULL,date('now'), SELECT COUNT(*) + 1 FROM Connections)";
}
const char *insertStmt = [insert UTF8String];
int result = sqlite3_prepare(database, insertStmt, -1, &stmt, NULL);
答案 0 :(得分:2)
直接为SQLite使用C函数是一件痛苦的事...... 有没有考虑过使用包装纸?
自从我开始使用一个以来,我开始使用DB查询的问题少得多...... 以下是建议链接:
Best Cocoa/Objective-C Wrapper Library for SQLite on iPhone
希望有所帮助