У меня есть несколько контроллеров представления, контроллер регистрации просмотра, контроллер просмотра контактов, контроллер добавления новых контактов и т. Д.
У меня есть приведенный ниже код в контроллере регистрации
DatabaseCRUD *database = [[DatabaseCRUD alloc] init];
NSMutableString *registrationquery=[NSMutableString stringWithFormat:@"insert into BARvalues values ('%@','%@','%@','%@','%@','%@')",[name text],[emailAddress text],[mobileNumber text],[password text],[country text],@"0"];
NSLog(@"registrationquery is %@",registrationquery);
[database updatenewregistration:registrationquery];
[database release];
DatabaseCRUD *database1 = [[DatabaseCRUD alloc] init];
NSMutableString *registrationquery1=[NSMutableString stringWithFormat:@"insert into contacts values ('1234','1234')"];
NSLog(@"registrationquery is %@",registrationquery1);
[database1 updatenewregistration:registrationquery1];
[database1 release];
DatabaseCRUD *database2 = [[DatabaseCRUD alloc] init];
NSMutableString *registrationquery2=[NSMutableString stringWithFormat:@"insert into contacts values ('abcd','abcd')"];
NSLog(@"registrationquery is %@",registrationquery2);
[database2 addcontacts:registrationquery2];
[database2 release];
вышеуказанный код работает нормально.он вставляет значения в базу данных sqlite.Вот проблема, у меня есть почти тот же код в другом viewcontroller (контакты, addcontacts) и значения не вставляются в базу данных sqlite. Вот код.
DatabaseCRUD *database = [[DatabaseCRUD alloc] init];
NSMutableString *registrationquery=[NSMutableString stringWithFormat:@"insert into contacts values ('raja','shekar')"];
NSLog(@"registrationquery is %@",registrationquery);
[database updatenewregistration:registrationquery];
[database release];
DatabaseCRUD *database1 = [[DatabaseCRUD alloc] init];
NSMutableString *registrationquery1=[NSMutableString stringWithFormat:@"insert into contacts values ('rajesh','neelam')"];
NSLog(@"registrationquery is %@",registrationquery1);
[database1 addcontacts:registrationquery1];
[database1 release];
я не вижу никакой причиныпочему объект базы данных вставляется в один viewcontroller, а не в другой viewcontroller.Любая помощь будет оценена.Я пытался выяснить, где ошибка весь день, и я не хочу больше тратить время.любая помощь, пожалуйста ????
Я ставлю точки останова на каждый метод объекта базы данных, чтобы увидеть, если его вставка, нет ошибки вообще.кажется, что он проходит через sqlstatment, но вставка не происходит.Вот код сохранения значений в базе данных. Вот код для вставки базы данных.
-(void) addcontacts :(NSString *)query
{
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK)
{
NSLog(@"query is %@",query);
sqlStatement=[query cStringUsingEncoding:NSASCIIStringEncoding];
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK)
{
while(sqlite3_step(compiledStatement) == SQLITE_ROW)
{
NSLog(@"new contact updated");
}
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
}
}