Очистить все строки в таблице SQLite iOS

Мне нужна ваша помощь. Как удалить все строки в таблице из sqlite db? Можете ли вы сказать, как удалить все строки за один шаг (не один за другим).

Обычный синтаксис SQL для этого:

DELETE FROM tablename 

любой SQLite-синтаксический запрос может быть обработан с использованием документации SQLite

для удаления строк таблицы sqlite в iOS следующий код

 NSString *query = @"delete from yourTable"; const char *sqlStatement = [query UTF8String]; sqlite3_stmt *compiledStatement; if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) { // Loop through the results and add them to the feeds array while(sqlite3_step(compiledStatement) == SQLITE_ROW) { // Read the data from the result row NSLog(@"result is here"); } // Release the compiled statement from memory sqlite3_finalize(compiledStatement); 

я думаю, это решает вашу проблему

Если вы хотите удалить все строки из таблицы SQL,

 DELETE FROM tablename 

Если вы хотите последовательно удалять строки,

 DELETE FROM tablename WHERE id=2 

Измените идентификатор в соответствии с вашим требованием или укажите конкретное имя поля, чью строку вы хотите удалить.

 (void) DeleteRows { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory , NSUserDomainMask, YES); NSString *documentsDir = [paths objectAtIndex:0]; NSFileManager *fileManager = [NSFileManager defaultManager]; NSError *error; NSString *dbPath =[documentsDir stringByAppendingPathComponent:@"gym.db"]; BOOL success = [fileManager fileExistsAtPath:dbPath]; sqlite3_stmt *selectstmt; if(!success) { NSString *defaultDBPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"gym.db"]; success = [fileManager copyItemAtPath:defaultDBPath toPath:dbPath error:&error]; if (!success) NSAssert1(0, @"Failed to create writable database file with message '%@'.", [error localizedDescription]); } if (sqlite3_open([dbPath UTF8String], &contactDB) == SQLITE_OK) { //*************** insert value in database******************************\\ NSString *sql = [NSString stringWithFormat:@"delete from Offers"]; const char *insert_stmt = [sql UTF8String]; sqlite3_prepare_v2(contactDB,insert_stmt, -1, &selectstmt, NULL); if(sqlite3_step(selectstmt)==SQLITE_DONE) { NSLog(@"Delete successfully"); } else { NSLog(@"Delete not successfully"); } sqlite3_finalize(selectstmt); sqlite3_close(contactDB); } } 
 - (IBAction)deleteAll:(id)sender { NSString *tableName=@"Contacts"; NSString *qsql = [NSString stringWithFormat:@"DELETE FROM %@", tableName]; sqlite3_stmt *statement; if (sqlite3_prepare_v2( db, [qsql UTF8String], -1, &statement, NULL) == SQLITE_OK) while (sqlite3_step(statement) == SQLITE_DONE){ NSLog(@"%@", @"deleted"); } else { sqlite3_close(db); NSAssert(0, @"Failed to Delete"); } sqlite3_finalize(statement); }