Pyodbc:插入时 SQLExecDirectW 错误

2023-12-19

由于某种原因,我使用以下方法将以下数组完全存储在 SQL 服务器中pyodbc以带有单引号的文本形式。

[‘萨钦’、‘尤拉吉’]

我使用下面的代码插入上面的值

tes_table= SQLCURSOR.execute('''INSERT INTO Test_Table(test_name) VALUES ('{}')
                                '''.format(arr))

我收到以下错误。

pyodbc.ProgrammingError: ('42000', "[42000] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Incorrect syntax near 'Sachin'. (102) (SQLExecDirectW)")
[13/Oct/2020 23:54:53] "POST /api/save HTTP/1.1" 500 77431

这是为什么使用字符串格式嵌入数据的另一个例子values插入 SQL 命令文本是一个坏主意。在这种情况下,呈现的字符串文字会产生语法错误,因为单引号未正确转义。

>>> arr = ['Sachin', 'Yuvraj']
>>> "... VALUES ('{}')".format(arr)
"... VALUES ('['Sachin', 'Yuvraj']')"

相反,您应该使用正确的参数化查询

sql = """\
INSERT INTO Test_Table (test_name) VALUES (?)
"""
tes_table = SQLCURSOR.execute(sql, str(arr))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pyodbc:插入时 SQLExecDirectW 错误 的相关文章

  • 在张量流中保存模型

    Tensorflow 允许我们使用 tf train write graph 方法保存 加载模型的结构 以便我们可以在将来恢复它以继续我们的训练 但是 我想知道这是否有必要 因为我可以创建一个模块 例如 GraphDefinition py
  • 如何调用 Numpy 数组中的元素?

    这看起来是一个非常简单的问题 但我找不到答案 如何调用 Numpy 数组中的元素 import numpy as np arr np array 1 2 3 4 5 6 7 8 9 10 print arr 0 0 上面的代码不起作用 只需
  • Python:帮助计数器和写入文件[重复]

    这个问题在这里已经有答案了 可能的重复 Python 如何创建连续的文件名 https stackoverflow com questions 2400827 python how do i create sequential file n
  • “+=”和“=+”有什么区别? [复制]

    这个问题在这里已经有答案了 我有一段简单的代码 可以打印出整数 1 10 i 0 while i lt 10 i 1 print i 然后 如果你只改变第 3 行的一个运算符 它会打印出无限数量的 1 整数 我明白为什么这样做 为什么运行第
  • 尝试从 Linux 通过 ODBC 连接到 SQL Server 2014 时出现错误代码 0x2746 (10054)

    Ubuntu 22 04 1 LTS pyodbc 4 0 35 OpenSSL 3 0 2 15 Mar 2022 Library OpenSSL 3 0 2 15 Mar 2022 遵循的步骤安装适用于 SQL Server Linux
  • 打字!带有 pyautogui 的字符

    这可以模拟击键 import pyautogui pyautogui typewrite hello world interval 0 1 除了那个 它写道hello world 使用 FR 键盘布局 它写道hello world 使用 E
  • pyspark中的函数input()

    我的问题是当我输入 p 的值时 没有任何反应 它不执行 请问有办法修复它吗 import sys from pyspark import SparkContext sc SparkContext local simple App p inp
  • python numpy savetxt

    有人可以指出我在这里做错了什么吗 import numpy as np a np array 1 2 3 4 5 dtype int b np array a b c d e dtype S1 np savetxt test txt zip
  • 2 列 pandas 上的地图

    我有一个数据框 如下所示 Col1 Col2 0 A PY 1 B PA 2 C PB 3 B PB 以及这个系列 Value Col1 Col2 A PY 20 B PB 30 我想做一个映射 如果该系列有一个索引 仅前 Col1 那么它
  • Tweepy API v2 身份验证

    如何使用 API v2 测试 Tweepy 身份验证 我的下面的代码由于身份验证而无法发布 但是 是否有其他方法可以在不调用发布推文 client create tweet 的情况下测试身份验证 import tweepy bearer t
  • API 端点的 Django 子域配置

    我已经建立了一个 Django 项目 它使用django rest framework提供一些 ReST 功能 网站和其他功能都运行良好 然而有一个小问题 我需要我的 API 端点指向一个不同的子域 例如 当用户访问该网站时 他 她可以根据
  • 操作数无法与形状 (128,) (0,) 错误一起广播

    我正在尝试实现面部识别登录系统 但出现错误 操作数无法与形状 128 0 一起广播 我不知道什么或如何解决它 这是我已实现的 view py 和 FaceDetector py 以及我从服务器收到的错误 errors Traceback m
  • Python Nose 导入错误

    我似乎无法理解鼻子测试框架 https nose readthedocs org en latest 识别文件结构中测试脚本下方的模块 我已经设置了演示该问题的最简单的示例 下面我会解释一下 这是包文件结构 init py foo py t
  • Python 中的安全解除引用

    Groovy 有一个很好的安全取消引用运算符 这有助于避免 NullPointerExceptions variable method The method仅当以下情况时才会被调用variable is not null 有没有办法在 Py
  • 为什么我的scoped_session 引发 AttributeError: 'Session' object has no attribute 'remove'

    我正在尝试建立一个系统 将数据库操作优雅地推迟到单独的线程 以避免在 Twisted 回调期间发生阻塞 到目前为止 这是我的方法 from contextlib import contextmanager from sqlalchemy i
  • 在 Flask (WSGI) 中使用全局单例,我是否需要担心竞争条件? [复制]

    这个问题在这里已经有答案了 Flask 的 hello world 演示是 from flask import Flask app Flask name app route def hello return Hello World if n
  • 错误:无法访问文件“$libdir/plpython2”:没有这样的文件或目录

    我正在运行 postgresql 9 4 PostgreSQL 9 4 4 on x86 64 unknown linux gnu compiled by gcc GCC 4 1 2 20070626 Red Hat 4 1 2 14 64
  • 一行Python和SQLite代码,为什么需要加“,”? [复制]

    这个问题在这里已经有答案了 c execute INSERT INTO numbers VALUES random randint 0 100 如果我将上面的代码更改为 c execute INSERT INTO numbers VALUE
  • 在 matplotlib 中使用 yscale('log') 时缺少误差线

    在某些情况下 当使用对数刻度时 matplotlib 会错误地显示带有误差条的图 假设这些数据 例如在 pylab 内 s 19 0 20 0 21 0 22 0 24 0 v 36 5 66 814250000000001 130 177
  • 一起使用 Flask 和 Tornado?

    我是以下的忠实粉丝Flask 部分是因为它很简单 部分是因为它有很多扩展 http flask pocoo org extensions 然而 Flask 是为了在 WSGI 环境中使用而设计的 而 WSGI 不是非阻塞的 所以 我相信 它

随机推荐