参数太少错误,同时未使用参数占位符

2024-05-11

我尝试使用 PYODBC 在 Access 数据库中执行 SQL 查询,但出现以下错误:

pyodbc.Error: ('07002', '[07002] [Microsoft][ODBC Microsoft Access 驱动程序] 参数太少。预期为 1。(-3010) (SQLExecDirectW)')

问题是我没有使用任何附加参数。这是代码:

access_con_string = r"Driver={};Dbq={};".format(driver, base)
cnn = pyodbc.connect(access_con_string)
db_cursor = cnn.cursor()
expression = """SELECT F_ARODES.ARODES_INT_NUM, F_ARODES.TEMP_ADRESS_FOREST,F_AROD_LAND_USE.ARODES_INT_NUM, F_ARODES.ARODES_TYP_CD
FROM F_ARODES LEFT JOIN F_AROD_LAND_USE ON F_ARODES.ARODES_INT_NUM = F_AROD_LAND_USE.ARODES_INT_NUM
WHERE (((F_AROD_LAND_USE.ARODES_INT_NUM) Is Null) AND ((F_ARODES.ARODES_TYP_CD)="wydziel") AND ((F_ARODES.TEMP_ACT_ADRESS)=True));"""

db_cursor.execute(expression)

如果在 MS-Access 内部使用,查询本身可以正常工作。此外,连接正常,其他查询也正常执行。 我究竟做错了什么?


此类查询中的常量是有问题的 - 您永远不知道布尔值、字符串等的确切底层语法 - 即使它在 MS-Access 中工作,它在您正在使用的中间库中也可能有所不同。

最安全的方法是将它们提取为参数:

expression = """SELECT F_ARODES.ARODES_INT_NUM, F_ARODES.TEMP_ADRESS_FOREST,F_AROD_LAND_USE.ARODES_INT_NUM, F_ARODES.ARODES_TYP_CD FROM F_ARODES LEFT JOIN F_AROD_LAND_USE ON F_ARODES.ARODES_INT_NUM = F_AROD_LAND_USE.ARODES_INT_NUM WHERE (((F_AROD_LAND_USE.ARODES_INT_NUM) Is Null)
AND ((F_ARODES.ARODES_TYP_CD)=?) AND ((F_ARODES.TEMP_ACT_ADRESS)=?));"""

db_cursor.execute(expression, "wydziel", True)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

参数太少错误,同时未使用参数占位符 的相关文章

  • ODFPy 文档 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我需要操作ODF文件格式 开放文档格式 开放办公室的内部格式 我需要用Python来完成 ODFPy
  • scikit-learn LinearRegression 的意外交叉验证分数

    我正在尝试学习使用 scikit learn 来完成一些基本的统计学习任务 我认为我已经成功创建了适合我的数据的线性回归模型 X train X test y train y test cross validation train test
  • 如何修复错误“错误:命令错误,退出状态 1:python。”尝试使用 pip 安装 django-heroku 时[重复]

    这个问题在这里已经有答案了 我正在尝试使用 pip 安装 django heroku 但它一直遇到错误 我看到一些建议告诉我要确保 Heroku 中的 Python 版本是最新的 我已经这么做了 推送到 Heroku master 后 我运
  • numpy.linalg.inv() 是否给出了正确的矩阵逆?编辑:为什么 inv() 给出数值错误?

    我有一个矩阵形状 4000 4000 我想取逆矩阵 我对逆矩阵的直觉因如此大的矩阵而崩溃 起始矩阵的值大小为e 10 具有以下值 print matrix给出一个输出 2 19885119e 10 2 16462810e 10 2 1306
  • 在Python中将距离矩阵转换为成对距离列表[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 假设Python中有以下距离矩阵 0 1 2 3 0 0 1 4 8 1 1 0 3 7 2 4 3 0 3 3 8 7 3 0 我想
  • 使用 selenium 在 python 中切换到弹出窗口

    如何在下面的 selenium 程序中切换到弹出窗口 我已经查找了所有可能的解决方案 但无法解决它们 请帮忙 from selenium import webdriver from splinter import Browser from
  • 在OpenCV Python中编写4通道以上图像

    这对我来说是一个持续的挑战 我正在尝试使用 openCV 将两个 3 RGB 图像组合成一个 6 通道 TIFF 图像 到目前为止我的代码如下 import cv2 import numpy as np im1 cv2 imread im1
  • 如何消除 matplotlib 轴的相对偏移

    当我尝试对具有足够大数字的范围进行绘图时 我得到一个所有刻度都有相对偏移的轴 例如 plot 1000 1001 1002 1 2 3 我在横坐标轴上得到这些刻度 0 0 0 5 1 0 1 5 2 0 1e3 问题是如何删除 1e3并得到
  • 在 matplotlib 中分割图例

    是否有可能将一个大图例分成多个 通常是 2 个 较小的图例 from pylab import t arange 0 0 2 0 0 01 s sin 2 pi t plot t s linewidth 1 0 label Graph1 g
  • Django:上传前调整图像大小

    我想调整图像大小 Pillow 在上传之前 我在下面编写了代码但不起作用 并得到错误 myapp list 处的属性错误 坚定的 请求方式 POST 请求网址 http 127 0 0 1 8000 myapp list http 127
  • os.path.expanduser("~") 的替代方案?

    在Python 2 7 x中 os path expanduser Unicode 已损坏 这意味着如果 的扩展中包含非 ASCII 字符 则会出现异常 http bugs python org issue13207 http bugs p
  • VS Code Pylance 不突出显示变量和模块

    我正在使用带有 Python 和 Pylance 扩展的 VS Code 我遇到的问题是 Pylance 扩展没有对模块和数据框等内容进行语法突出显示 我希望顶部的模块为绿色 df 变量为蓝色 我正在使用默认的深色 颜色主题 这是我的 VS
  • Django 中同一个模型的多个多对多关系

    给定以下具有两个多对多关系的模型 class Child models Model name models CharField max length 80 class Foo models Model bar models ManyToMa
  • Django 1.6:如何在视图中访问静态文件

    我已经尝试过解决方案here https stackoverflow com questions 11721818 django get the static files url in view这对我不起作用 我正在为 Python 创建一
  • Python 中的“finally”总是执行吗?

    对于Python中任何可能的try finally块 是否保证finally块总是会被执行吗 例如 假设我在except block try 1 0 except ZeroDivisionError return finally print
  • 纯Python库读写jpeg格式

    伙计们 我正在寻找 jpeg 写入 阅读会很好 但不是必需的 库的纯 python 实现 我只在以下位置创建了 TonyJPEG 库端口 http mail python org pipermail image sig 2004 Novem
  • FileAllowed 不显示错误消息

    我正在使用 WTForms 我正在对文件上传应用验证 并将其限制为仅 jpg png 和 pdf 格式 但是 如果我输入不正确 则不会出现错误消息 我按照这个教程https flask wtf readthedocs io en stabl
  • Mac 上的 PythonXY?

    如何在 Mac OS X Lion 上安装 Python 我开始了 它应该能够通过 macports 但无论如何我找不到 mac ports 网站上所述的端口 pythonXY 我对 MAC 和 pythonXY 都不太了解 但在 pyth
  • 每次 apache 重新启动时,flask-login 会话都会被破坏

    我正在使用烧瓶登录https github com maxcountryman flask login https github com maxcountryman flask login和领域记住登录用户 http packages py
  • pylint:忽略 rcfile 中的多个

    在我的 django 项目中 我使用的是外部编写的应用程序 但编写得很糟糕 现在我想从我的 pylint 报告中忽略这个应用程序 但是我无法让 pylint 忽略它 Pylint 已经忽略了南方的迁移 如下所示 MASTER ignore

随机推荐