首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么PyODBC认为我的SQL只有1个参数

为什么PyODBC认为我的SQL只有1个参数
EN

Stack Overflow用户
提问于 2019-10-20 08:21:38
回答 1查看 29关注 0票数 0

有人能帮我理解为什么ODBC认为我的sql中只有一个参数吗?

代码语言:javascript
运行
复制
sql = """
   IF OBJECT_ID('?', 'U') IS NOT NULL
   begin
       DROP TABLE ?
   end"""
cursor.execute(sql, table_name, table_name)
代码语言:javascript
运行
复制
pyodbc.ProgrammingError: ('The SQL contains 1 parameter markers, but 2 parameters were supplied', 'HY000')
EN

Stack Overflow用户

回答已采纳

发布于 2019-10-20 08:27:13

您正在传递文字字符串'?‘添加到OBJECT_ID函数。

代码语言:javascript
运行
复制
IF OBJECT_ID('?', 'U') IS NOT NULL

应该是

代码语言:javascript
运行
复制
IF OBJECT_ID(?, 'U') IS NOT NULL

但是,如果这是SQL Server,那么还有另一个问题。不能参数化DDL语句,DROP TABLE是DDL语句。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58469067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档