如何显示由MySQLDB游标构造的SQL字符串?

Tap*_*eak 4 python mysql-python

我想自己验证这个MySQL字符串是如何被光标翻译的:

cursor.execute("SELECT * from elements where id = %s", (element_id))
Run Code Online (Sandbox Code Playgroud)

有没有办法获取计算出的SQL字符串并将其打印出来,最好是在执行之前?(后者不是绝对必要的 - 我只是这样做,因为我正在学习Python,并希望确保我的SQL字符串被清理)

glg*_*lgl 6

是.正如费迪南德所指出的那样,有一个MySQLdb/cursors.py含有一个execute(),而后者又称之为_query().

这将执行的查询放入self._executed.

所以你可以从中得到它cursor._executed.