Ios 无法将格式化字符串插入sqlite
我使用“由字符串连接的组件”连接了三个对象。joinedString的NSLog提供了以下信息:Ios 无法将格式化字符串插入sqlite,ios,sqlite,nsstring,Ios,Sqlite,Nsstring,我使用“由字符串连接的组件”连接了三个对象。joinedString的NSLog提供了以下信息: joined string is ( "722.3300", "4924.6700", "225.38" ) 当我将其添加到数组中时,显示如下所示: array objects are: { "obj1", "obj2", "(\n \"722.3300\",\n \"4924.6700\",\n \"225.38\
joined string is (
"722.3300",
"4924.6700",
"225.38"
)
当我将其添加到数组中时,显示如下所示:
array objects are:
{
"obj1",
"obj2",
"(\n \"722.3300\",\n \"4924.6700\",\n \"225.38\"\n)",
"obj4"
}
我试图将这些值插入到sqlite中
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES (\"%@\")",[array objectatIndex:0]]; //this executes perfectly
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES (\"%@\")",[array objectatIndex:1]]; //this executes perfectly
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES (\"%@\")",[array objectatIndex:2]]; //oops...somethings wrong here
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES (\"%@\")",[array objectatIndex:3]]; //this executes perfectly
是否有其他方法插入连接的字符串?请在这个问题上帮助我。您应该使用单引号(')而不是双引号(“)来表示sqlite字符串
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')",[array objectatIndex:0]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')",[array objectatIndex:1]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')",[array objectatIndex:2]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')",[array objectatIndex:3]];
如果要插入的字符串包含单引号,则应使用转义。请参阅
您的“连接字符串”是NSArray的
描述转储。(可能您使用了组件通过字符串连接,但使用了原始数组,而不是结果NSString??)(并且您的问题缺少任何有意义的代码。)你指的是原始数组吗?我将结果字符串存储到数组中,并尝试将数组值存储到数据库中。
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')", [[array objectatIndex:0] stringByReplacingOccurrencesOfString:@"'" withString:@"''"]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')", [[array objectatIndex:1] stringByReplacingOccurrencesOfString:@"'" withString:@"''"]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')", [[array objectatIndex:2] stringByReplacingOccurrencesOfString:@"'" withString:@"''"]];
insertString=[NSString stringWithFormat:@"INSERT INTO MY_T (field1) VALUES ('%@')", [[array objectatIndex:3] stringByReplacingOccurrencesOfString:@"'" withString:@"''"]];