Ios 无法将格式化字符串插入sqlite

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\

我使用“由字符串连接的组件”连接了三个对象。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\"\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:@"''"]];