Как сохранить текст из UITextField в базу данных SQLite? - PullRequest
1 голос
/ 25 апреля 2011

Я видел много учебников, как читать данные из базы данных SQLite, но никогда не записывать в них. Я хочу сохранить текст UITextField в поле в таблице базы данных. Как бы вы это сделали? Является ли это возможным? пожалуйста, включите любые ссылки, которые могут помочь.

спасибо.

Ответы [ 2 ]

1 голос
/ 25 апреля 2011

Метод GetDatabasePath возвращает путь к базе данных.

- (void)insertIntoDtabase:(NSString*)text  {


    sqlite3_stmt *statement = nil;
    char sql[1000];
    sprintf(sql, "Insert into *yourtablename* values ('%s')",[text UTF8String], );

    NSString *path = [self GetDatabasePath] ;
    if(sqlite3_open([path UTF8String],&database) == SQLITE_OK )
    {
        if((sqlite3_prepare_v2(database, sql, -1, &statement, NULL)) == SQLITE_OK)
        {   
            //NSLog(@"%s",sql);
            sqlite3_step(statement);
        }
        sqlite3_finalize(statement);
    }
    sqlite3_close(database);


}

Вы вызываете этот метод, когда хотите добавить данные текстового поля в базу данных и передать данные текстового поля в качестве параметра.

0 голосов
/ 25 апреля 2011

Поскольку вам необходим доступ к базе данных SQLite на iOS, вы также можете узнать, как это сделать, используя Core Data .

Одна из самых простых метрик заключается в том, что с Core Data, объем кода, который вы написать, чтобы поддержать слой модели ваша заявка обычно составляет 50% На 70% меньше, чем измеряется линиями код. Это связано прежде всего с функции, перечисленные выше - функции Основные данные предоставляют функции, которые вы не нужно реализовывать себя.

Но если у вас нет достаточного количества данных для хранения, было бы быстрее и проще использовать NSUserDefaults вместо SQLite. Пример:

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:myString forKey:@"KEY"];
NSString *string = [defaults objectForKey:@"KEY"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...