我想知道如何确定是否没有受SQL语句影响的元素(特别是删除)。我有一个与删除UITableView内容的按钮关联的下一个函数,我给它的参数(nombre)它是一个UITextField.text元素。将提供任何进一步的信息
#import "SD9ProxyBD.h"
#include <sqlite3.h>
@implementation SD9ProxyBD
-(NSMutableArray *)nombres{
sqlite3 *laBd;
sqlite3_stmt *consultaPreparada;
const char *consulta="Select nombre from informacion";
NSString *ruta=[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"mibd"];
sqlite3_open([ruta UTF8String], &laBd);
sqlite3_prepare(laBd,consulta,-1,&consultaPreparada,NULL);
NSMutableArray *resultados=[[NSMutableArray alloc]init];
while (sqlite3_step(consultaPreparada)==SQLITE_ROW) {
[resultados addObject:[NSString stringWithUTF8String:(char *)sqlite3_column_text(consultaPreparada,0)]];
}
sqlite3_close(laBd);
return resultados;
}
-(void)insertarNombre:(NSString *)nombre{
sqlite3 *laBd;
sqlite3_stmt *consultaPreparada;
const char *consulta="Insert into informacion(nombre) values(?)";
NSString *ruta=[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"mibd"];
sqlite3_open([ruta UTF8String], &laBd);
sqlite3_prepare(laBd,consulta,-1,&consultaPreparada,NULL);
sqlite3_bind_text(consultaPreparada,1,[nombre UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_step(consultaPreparada);
sqlite3_finalize(consultaPreparada);
sqlite3_close(laBd);
}
-(void)eliminarNombre:(NSString *)nombre{
sqlite3 *laBd;
sqlite3_stmt *consultaPreparada;
const char *consulta="Delete from informacion where nombre=?";
NSString *ruta=[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"mibd"];
sqlite3_open([ruta UTF8String], &laBd);
sqlite3_prepare(laBd,consulta,-1,&consultaPreparada,NULL);
sqlite3_bind_text(consultaPreparada,1,[nombre UTF8String],-1,SQLITE_TRANSIENT);
sqlite3_step(consultaPreparada);
sqlite3_finalize(consultaPreparada);
sqlite3_close(laBd);
}
@end
以下是按钮的代码:
- (IBAction)eliminar:(id)sender {
[self.texto resignFirstResponder];
[self.proxyBD eliminarNombre:self.texto.text];
[self.tabla reloadData];
}