没有受SQL语句影响的元素

时间:2014-03-15 22:12:39

标签: ios sql sqlite uitableview sql-delete

我想知道如何确定是否没有受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];
}

0 个答案:

没有答案