使用execute()转义sqlalchemy的字符

时间:2011-07-19 23:38:20

标签: python mysql sqlalchemy

我正在处理mySQL / sqlAlchemy执行语句,如下所示:

stmt = 'SELECT * from myTable where id=:idVar AND pct LIKE :pctVar'
args = {idVar:5, pctVar:'5%\\%'}
result = session.execute(stmt, args).fetchall()

如何逃避'%'?以上不符合“55%”

1 个答案:

答案 0 :(得分:3)

使用显式ESCAPE规范尝试以下查询:

stmt = "SELECT * from myTable where id=:idVar AND pct LIKE :pctVar ESCAPE '\\'"

如果有效,请查看NO_BACKSLASH_ESCAPES选项。