我有一个 DataImportHandler 用于从 SQL 数据库导入数据。根实体,Foo有许多Bars。该Bar表Foo.Name用作其外键。某些 Foo 名称中包含单引号 - 例如STW's.
实体的导入查询Bar类似于:
select name from Bar where Foo_Name = ${Foo.Name}
但是,当 Foo.Name 包含单引号时,导入失败并出现 SQL 异常Incorrect syntax near 's。
我试过用它包装参数,escapeSql(${Foo.Name})但它似乎没有被调用——正在执行的 sql 是where Foo_Name = 'escapeSql(STW's)'
Foo.Name当它们包含单引号时,如何正确逃避以避免出现问题?