207, b"Invalid column name 'nan'

【问题描述】:使用pymssql连接数SQL Server数据库,插入数据是报错:(pymssql.ProgrammingError) (207, b"Invalid column name 'nan'.DB-Lib error message 20018, severity 16:\nGeneral SQL Server error: Check

报错

【问题分析】:原数据是pandas的DataFrame结构,pandas在遇到空值是会将其转换为np.nan值,而非python通用的 None,故推测bug是由于插入数据中含有无法识别的np.nan值导致。
【解决方案】:在数据插入前,使用df.replace(np.nan, None, inplace=True)np.nan值转换为可识别的None后,问题解决。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容