sql和Delphi都使用单引号作为字符串边界。既然你想有烧灼引号 内 的字符串,你要“逃跑”使用doube单引号吧。
例如,如果您编写S := 'Guns''N''Roses'
该变量S
将包含字符串Guns'N'Roses
-12个字符,而不是14个字符。
连接字符串值时要小心,因为它们也可能包含单引号。在这种情况下,推荐的查询写方法是:
sql := 'INSERT INTO Table (Col) VALUES (' + QuotedStr(Val) + ')';
函数QuotedStr
wll会小心并且将字符串中的所有单引号引起来加倍。这对于避免插入黑客攻击也是必不可少的。