У меня проблемы при вставке данных в таблицу sqlite, я прочитал много сообщений, но все еще не нашел решения, надеюсь, вы мне поможете.
Мое определение таблицы:
CREATE TABLE "forum_topics" ("id" INTEGER (11) PRIMARY KEY NOT NULL UNIQUE DEFAULT 1, "id_user" INTEGER (11) NOT NULL DEFAULT 0, "title" TEXT NOT NULL DEFAULT None, "description" TEXT NOT NULL DEFAULT None)
У меня возникла эта проблема при выполнении следующей функции:
- (void)addTopic{
if (addStmt == nil) {
const char *sql = "INSERT INTO forum_topics (id_user, title, description) VALUES (?, ?, ?)";
if (sqlite3_prepare_v2(database, sql, -1, &addStmt, NULL) != SQLITE_OK) {
NSAssert1(0, @"Error while creating add statement. '%s'", sqlite3_errmsg(database));
}
}
sqlite3_bind_int(addStmt, 1, id_user);
sqlite3_bind_text(addStmt, 2, [title UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(addStmt, 3, [desc UTF8String], -1, SQLITE_TRANSIENT);
if (SQLITE_DONE != sqlite3_step(addStmt)) {
NSAssert1(0, @"Error while inserting data. '%s'", sqlite3_errmsg(database));
}
else {
self._id = sqlite3_last_insert_rowid(database);
}
sqlite3_reset(addStmt);
sqlite3_finalize(addStmt);
addStmt = nil;
}
Ну, я также пытался принудительно связать столбец id таблицы, и она не вылеталанесмотря на то, что id имеет PRIMARY KEY и UNIQUE ограничения, и предполагается, что они не устанавливаются ... Есть предложения?Спасибо.