我在互联网上到处搜索,但我还没有找到答案。我的代码就像超越。我从 UITextField 中取出我的希腊字符,将它们放入 InsertPersonToDatabase func 并将它们发送到数据库。
-(BOOL)insertPersonToDatabase:(const char *)_name :(const char *)_surname :(const char *)_age;
{
sqlite3 *database;
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK)
{
const char *sqlStatement = [[NSString stringWithFormat:@"insert into person (name,surname,age) values ('%s','%s','%s')",_name,_surname,_age] UTF8String];
NSLog(@"%s",sqlStatement);
char *zErrMsg = 0;
if (sqlite3_exec(database, sqlStatement, NULL, NULL, &zErrMsg)==SQLITE_OK)
{
NSLog(@"Row inserted!!");
}
else
{
NSLog(@"Row DIDN'T inserted..");
sqlite3_free(zErrMsg);
sqlite3_close(database);
return FALSE;
}
sqlite3_free(zErrMsg);
}
sqlite3_close(database);
return TRUE;
}
但是 NSLog 打印: 插入人(姓名,姓氏,年龄)值('≈í√ü≈í¬±≈ì√Ö≈í√∏≈ì√ñ≈í¬™≈í¬±','≈í √ü≈í¬±≈ì√ë≈í,àÇ≈í,àë≈í¬•≈í,àë≈í¬∫≈í,àë≈ì√ë≈ì√Ö≈íœÄ≈í√∏≈ì √ñ','25')这些是保存在我的数据库中的值,而不是我在文本字段中写的希腊字符。
有人知道答案吗?请帮忙!!!!
谢谢!!