MySQL查询抛出1064错误

时间:2015-10-29 06:08:02

标签: python mysql sql flask

我有一个存储在mysql db中的大量数据。数据库中的一列是长字符串。其中一个字符串是" iEdge检测到'警告'条件' iedge"它存储在string_type中。我必须查询数据库并找到有多少这样的字符串。我正在查询我的python程序。当我使用像

这样的东西时
  cur.execute("select count(*) from table1 as tmp where tmp.err_string='"+row[r]+"'")

行[r]包含" iEdge检测到'警告'条件' iedge"

我收到错误1064(您的SQL语法中有错误...)。我认为它正在发生,因为字符串中有一些引号。我可以知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

sql = "select count(*) from table1 as tmp where tmp.err_string=%s"
cursor.execute(sql, [row[r]])

让MySQL Python库担心转义特殊字符以及如何引用字符串。

有关详细信息,请参阅this SO post

相关问题