我正在尝试在adobe sqlite中添加一个带有“There's”的字符串。并且它表示字符串中的's有错误?无论如何我可以添加到SQL语句中吗?
INSERT INTO TABLE_1 VALUES(null,"name","There's a string here here",1);
答案 0 :(得分:2)
尝试:
INSERT INTO TABLE_1 VALUES(null,'name','There''s a string here here',1);
答案 1 :(得分:2)
虽然你可以只是逃避'
,但更好的做法是使用参数绑定和占位符; SQL注入不是你的朋友。
stmt.text = "INSERT INTO PERSON (FNAME, LNAME) "
+ "values(:FNAME, :LNAME)";
stmt.parameters[":FNAME"] = edtFName.text;
stmt.parameters[":LNAME"] = edtLName.text;
...
<s:TextInput id="edtFName" />
<s:TextInput id="edtLName" />
答案 2 :(得分:0)
用两个连续的撇号替换字符串中的所有撇号。
答案 3 :(得分:0)
这个very similar question(iPhone而不是Adobe)的答案是你必须为每个撇号添加第二个撇号(“有”成为“有”)或您使用参数化的SQL语句。