在sql没有变化的情况下,随着数据表的数据越来越多,大约1千W,程序开始出现下面错误提示

pymssql._pymssql.OperationalError: (8114, b'Error converting data type nvarchar to numeric.DB-Lib error message 20018, severity 16:\nGeneral SQL Server error: Check messages from the SQL Server\n')
看提示内容是数据类型转换时出现了问题,网友大多也这么说,但是调整数据类型之后,错误并没有消失,
由于我的业务逻辑中有很多sql要执行,做后才会统一提交,大致如下:
查询表1---删除表2多条---插入表1---插入表2多条---删除表3多条----插入表3多条----提交
怀疑可能是提交前执行的sql产生了交叉错误干扰,于是尝试将链条简短,创建多个数据库连接对象,一个专门用来查询、一个删除、一个插入,
根据上面的思路解决了我的问题
具体代码比较麻烦而且涉及到公司业务,不能公布
在处理约1千万数据的表格时,遇到pymssql库的OperationalError,问题指向数据类型转换。尝试调整数据类型未果后,发现错误可能源于复杂的业务逻辑和sql操作顺序。通过创建多个数据库连接对象,分别用于查询、删除和插入操作,成功解决了问题。
2031

被折叠的 条评论
为什么被折叠?



