如何在SQL中的值包含撇号时修复错误

时间:2017-10-12 01:24:13

标签: sql firebird

我正在使用Firebird SQL语句更新表中的字符串,并使用用户键入的信息。但是,如果用户输入的字符串有撇号,则会产生错误,因为SQL语法不再正确读取。

我想我可以读取字符串并删除所有撇号实例,但我想知道是否有更简单的方法。

{编辑2017年5月17日} 我正在使用Firebird 2.5(作为名为Ostendo的软件程序的一部分)

以下是代码摘录:

 UpdatedMsg := frmPOLineNotesMemo.Lines.text;
 SQLUpdateStr := 'update ASSEMBLYLINES set LINENOTES = LINENOTES || '''+ UpdatedMsg +''' Where SYSUNIQUEID = ' + AssyPropertyLine + '';
 ExecuteSQL(SQLUpdateStr);

frmPOLineNotesMemo.Lines.Text是用户通过表单输入的信息。

1 个答案:

答案 0 :(得分:0)

你需要加倍字符串中的撇号。 在此处找到:https://firebirdsql.org/manual/qsg10-firebird-sql.html

但请记住评论。用户输入应作为参数传递,以避免安全问题。