python - 将 varchar 值“无”转换为数据类型 int.DB-Lib 时转换失败
问题描述
我试图将 python 数据框导入 SQL 服务器上的数据库。我收到这样的错误:
$ python mssql_insert.py
Traceback (most recent call last):
File "src\pymssql.pyx", line 448, in pymssql.Cursor.execute
File "src\_mssql.pyx", line 1064, in _mssql.MSSQLConnection.execute_query
File "src\_mssql.pyx", line 1095, in _mssql.MSSQLConnection.execute_query
File "src\_mssql.pyx", line 1228, in _mssql.MSSQLConnection.format_and_run_query
File "src\_mssql.pyx", line 1639, in _mssql.check_cancel_and_raise
File "src\_mssql.pyx", line 1683, in _mssql.maybe_raise_MSSQLDatabaseException
_mssql.MSSQLDatabaseException: (245, b"Conversion failed when converting the varchar value 'None' to data type int.DB-Lib error message 20018, severity 16:\nGeneral SQL Server error: Check messages from the SQL Server\n")
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\XZHANGA\AppData\Local\Programs\Python\Python36\lib\site-packages\sqlalchemy\engine\base.py", line 1246, in _execute_context
cursor, statement, parameters, context
File "C:\Users\XZHANGA\AppData\Local\Programs\Python\Python36\lib\site-packages\sqlalchemy\engine\default.py", line 581, in do_execute
cursor.execute(statement, parameters)
File "src\pymssql.pyx", line 468, in pymssql.Cursor.execute
pymssql.OperationalError: (245, b"Conversion failed when converting the varchar value 'None' to data type int.DB-Lib error message 20018, severity 16:\nGeneral SQL Server error: Check messages from the SQL Server\n")
它提到不能将“无”值导入 SQL 数据库(我记得肯定可以)。
有人可以在这里找到问题吗?
解决方案
推荐阅读
- azure-data-explorer - 从 Kusto 函数调用 REST API
- python - 即使使用完全指定的文件路径,df.to_csv 也不会生成 CSV 文件
- css - 带有 2 张图像的响应式绝对定位
- javascript - 当我们已经有快速服务器时,为什么要为 Socket.io 创建新的 http 实例?
- javascript - 电子邮件正则表达式的误报
- python - 在字典列表中将两个相同的值与相同的键组合起来
- ajax - 使用带有随机数/缓存的 ajax 为 wordpress 构建前端登录时的最佳实践
- git - 根据 repo 中的数据部署到工件
- linux - 无论文件夹深度或数量,复制或移动目录中的所有文件
- sql - SQL 在两行之间插入行