我有一个 DataImportHandler 用于从 SQL 数据库导入数据。根实体,Foo
有许多Bar
s。该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
当它们包含单引号时,如何正确逃避以避免出现问题?