【发布时间】:2019-03-13 10:29:06
【问题描述】:
cursor.execute("DROP DATABASE ?", (databasename,))
我正在使用 python3 和 pyodbc 驱动程序。仅在创建和删除数据库时遇到问题。其他操作如 select 工作正常。
出现以下错误: pyodbc.ProgrammingError: ('42000', u"[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]'@P1' 附近的语法不正确。(102) (SQLExecDirectW)")
【问题讨论】:
-
你不能。参数化查询使用准备好的语句,这些语句只允许绑定“值”,而不是标识符或文字。您必须自己清理表名、列等。另见this Q&A;虽然它被标记为
php,但它仍然适用。
标签: python python-3.x azure-sql-database pyodbc