1
簡單的SQL語句:爲什麼PostgreSQL cursor.execute()命令添加單引號?
sql = "DROP TABLE IF EXISTS %s"
cursor.execute(sql, ("user_table",))
它失敗:
psycopg2.ProgrammingError: syntax error at or near "'user_table'"
LINE 1: DROP TABLE IF EXISTS 'user_table'
在SQL語句中的單引號的問題。如果我運行它,它工作得很好:
cursor.execute("DROP TABLE IF EXISTS user_table")
已經有效,非常有意義。謝謝! –
更嚴格地說,查詢參數僅適用於傳遞文字。你不能用它們替代標識符或關鍵字。 –