【问题标题】:inserting into SQLite插入 SQLite
【发布时间】:2012-03-27 18:10:19
【问题描述】:

插入和检索代码有问题

没有运行时错误,但插入数据不起作用,检索代码仅从数据库中检索最后一条记录。

使用NSString 还是NSMutableString 哪个更好?

NSLog(@"test");

NSString *sql1 = [NSString stringWithFormat:@"INSERT INTO User Values (2,'%@','','F','123','','','','','A','B','123','123',2)",name.text];

char *err;
sqlite3_exec(database, [sql1 UTF8String], NULL, NULL, &err)!= SQLITE_OK ;
const char *sql = "select * from User";

        sqlite3_stmt *searchStatement;
        if (sqlite3_prepare_v2(database, sql, -1, &searchStatement, NULL) == SQLITE_OK) 
        {

            while (sqlite3_step(searchStatement) == SQLITE_ROW) 
            {


                 char * try = (char*)sqlite3_column_text(searchStatement, 1);
                 if (try){
                 item = [NSMutableString stringWithUTF8String:try];

                 }
                 else{

                 item = @"";
                 }

【问题讨论】:

    标签: objective-c xcode sqlite


    【解决方案1】:

    问题似乎出在您的检索代码中。 sqlite3_column_type 方法使用从零开始的索引,但看起来您是从位置 1 开始的。因此,每次您逐步执行时,您都不会提取所需的信息。我不确定你为什么会得到最后一项,但请尝试从位置 0 开始,看看是否有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-07
      • 2017-11-26
      • 1970-01-01
      相关资源
      最近更新 更多