0

こんにちは、sqlitedb を使用するアプリを開発しています。いくつかの例を読み、アプリを作成しようとしました。挿入したいテーブルには3つの列があります。ID INTEGER PRIMARY KEY AUTOINCREMENT、NAME TEXT、DURATION REAL、TIME REAL 私が読んだ例に基づいて以下のコードを書きます。しかし、私は常にレコードを追加できませんでした。PS: db の作成をテストしましたが、問題ありません。このチュートリアルを使用しまし たが、別のアプリケーションでは問題ありませんでした。しかし、ここでは機能しません

        NSTimeInterval endTime = [[NSDate date] timeIntervalSinceReferenceDate];

    double elapsedTime = endTime-startcache;

    NSString *my=[NSString stringWithFormat:@"%f",elapsedTime];
    TextField1.text=my;

    // saving in database
   NSString * durationstring=[NSString stringWithFormat:@"%f",elapsedTime];
  NSString *   timestring=[NSString stringWithFormat:@"%f",endTime];

    sqlite3_stmt    *statement;
    const char *dbpath = [_databasePath UTF8String];

    if (sqlite3_open(dbpath, &_activityDB) == SQLITE_OK)
    {

        NSString *insertSQL = [NSString stringWithFormat:
                               @"INSERT INTO ACTIVITYTABLE (name, duration,time ) VALUES (\"%@\", \"%@\", \"%@\")",
                               activityname, durationstring,timestring];

        const char *insert_stmt = [insertSQL UTF8String];
        sqlite3_prepare_v2(_activityDB, insert_stmt,
                           -1, &statement, NULL);
        if (sqlite3_step(statement) == SQLITE_DONE)
        {
            self.status.text = @"record added";


        } else {
            self.status.text = @"Failed to add record";
        }
        sqlite3_finalize(statement);
        sqlite3_close(_activityDB);
    }
4

1 に答える 1