sql-server - 在对 SQL Server 的 pyodbc 调用中报告 WHICH 字段导致错误
问题描述
我有一个 python 文件的集合,每个文件都使用以下形式的多个调用:
sql_str = "exec SP_UPDATE;"
try:
cursor.execute(sql_str)
except pyodbc.OperationalError as error:
print("Connection issue. connection failure")
except pyodbc.ProgrammingError as error:
# Note this error is specific to a table and a row
log_error(cursor, __file__, '', 'SP_UPDATE', 0,
"Failure running update production table for SP_UPDATE"
"SP_UPDATE" +
"",
f'pyodbc error message: {error}')
SP 看起来也很相似:
CREATE PROCEDURE [].[SP_UPDATE]
@id_something [nvarchar] (500) NULL,
@d_dt_start [date] NULL,
@d_dt_end [date] NULL
...
AS
BEGIN
something
END
现在代码可以工作了——大部分时间。但我担心代码何时不起作用,这总是由于数据错误。此代码片段在循环中调用。我应该保存行号。这很有帮助。但我真的很想知道是哪一列导致了问题并报告了这一点,因为真实的数据集有 7 到 200 多列。有没有办法解决这个问题?
解决方案
推荐阅读
- python - 使用 numpy 在循环中创建矩阵
- javascript - 使用 JavaScript API 在 Google Drive 上自定义 mime 类型会中断编码
- c - GLib - class_init 和 init 类方法之间的区别
- php - Woocommerce 预订中每个人和项目的动态结帐自定义字段
- java - 如何使用 android 从 Azure IoT 中心读取设备到云?
- swagger - Phalcon Zircote/Swagger-php 安全错误
- sql - SQL 组用户,如果他们属于一个或多个组
- c# - 在 NHibernate 中为 linq 生成平均时间跨度的方法
- javascript - 迭代对象中的嵌套数组以整理信息
- java - java中对数组进行排序的算法