我正在使用sqlite数据库,试图插入数据库但它无法正常工作。我搜索了一些帖子,还写了重置和敲定语句。
(void)addLimittypeForeign
{
// Create insert statement for the person
if(sqlite3_open([dbPath UTF8String],&database) == SQLITE_OK)
{
NSString *querySQL = [NSString stringWithFormat:
@"insert into Limittabel (limitid,limitAmt,Profileid) Values (?,?,?)"];
char *errmsg=nil;
if(sqlite3_exec(database, [querySQL UTF8String], NULL, NULL, &errmsg)
!= SQLITE_OK )
{
NSLog(@"YES THE DATA HAS BEEN WRITTEN SUCCESSFULLY");
}
}
sqlite3_close(database);
}
请帮帮我。谢谢
答案 0 :(得分:0)
使用此代码进行插入是数据库....根据您的要求更改代码...对我来说工作正常...
-(void) insertDataIntoDatabase
{
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
databasePath = [documentsDir stringByAppendingPathComponent:@"dataBaseName.sqlite"];
NSLog(@"%@",sender);
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK)
{
NSLog(@"%@",[quoteDic objectForKey:@"bookmark"]);
NSLog(@"%d",[[quoteDic objectForKey:@"quoteId"] intValue]);
NSString *sqlStatement=[NSString stringWithFormat:@"insert into tableName (frndName,frndDescription,frndAddress,frndMobile,frndEmail,frndCollege,frndCompany) Values('%@','%@','%@','%@','%@','%@','%@')",[frndName text],[frndDescription text],[frndAddress text],[frndMobile text],[frndEmail text],[frndCollege text],[frndCompany text]];
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, [sqlStatement UTF8String], -1, &compiledStatement, NULL) == SQLITE_OK)
{
}
if(sqlite3_step(compiledStatement) != SQLITE_DONE)
{
//sqlite3_close(database);
NSAssert1(0, @"Error while Updating data. '%s'", sqlite3_errmsg(database));
sqlite3_finalize(compiledStatement);
}
else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Update!!"
message:@"Your record Updated"
delegate:nil
cancelButtonTitle:@"Thankyou"
otherButtonTitles:nil];
[alert show];
[alert release];
}
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
}