当前位置: 首页 > article >正文

ProgrammingError: nan can not be used with MySQL

  1. 该错误怎么发生的?

我们先在本地创建测试表:

CREATE TABLE `users_test` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键',
  `trade_account` varchar(50) DEFAULT NULL COMMENT '交易账号',
  `username` varchar(50) DEFAULT NULL,
  `email` varchar(100) DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;

SELECT * FROM users_test;

在这里插入图片描述
然后,我们尝试通过Python往里面写数:


import pymysql 
engine = pymysql.connect(host="xxx.138.xxx.216", user="root",port=3306, password="xxxxxxMoH0Oj", database="xxxx", charset="utf8")

# cursor.execute(f"INSERT INTO users_test(username,email) VALUES (%s,%s)", (math.nan, 'TEST@QQ.COM') ) 

cursor.execute(f"INSERT INTO users_test(username,email) VALUES (%s,%s)", (np.NAN, 'TEST@QQ.COM') )

在这里插入图片描述

# 改变策略:

cursor.execute(f"INSERT INTO users_test(username,email) VALUES (%s,%s)", (None, 'TEST@3Q.COM') )  # 可以

# 提交事务并关闭连接
engine.commit()

# 关闭engine:
engine.close()

成功!

进一步总结:

在这里插入图片描述
一定要转一下
在这里插入图片描述


http://www.kler.cn/news/156496.html

相关文章:

  • 唯创知音WT588F02A-16S录音语音芯片在宠物喂食器中的应用:小芯片,大功能
  • 【python】——函数
  • 合成相机模型【图形学】
  • 机器人制作开源方案 | 校园餐具回收分类机器人
  • 群晖NAS配置之搭建WordPress个人博客站点
  • ❀My学习Linux命令小记录(7)❀
  • 【JVM系列】Class文件分析
  • 蓝桥杯每日一题2023.12.3
  • el-select多选multiple数据无法删除,回显成功,但无法编辑,选中和删除都没反应
  • C++类的定义和使用
  • 单个 Zip 文件体积超过 40GB
  • 二蛋赠书十期:《剪映短视频剪辑从入门到精通》
  • 天翼云:“百万IOPS”助推政企上云
  • 理解 Python 的 for 循环
  • 颠覆性语音识别:单词级时间戳和说话人分离
  • nodejs的安装和验证
  • 2023/11/30JAVAweb学习(postman,各种参数,统一响应数据,三层架构,分层解耦,bean组件扫描,Bean注入及解决方式)
  • python-绘图(主次坐标轴)
  • windows11 调整鼠标灵敏度方法
  • 分享73个节日PPT,总有一款适合您
  • LeetCode [中等]岛屿数量
  • 安卓8预装可卸载应用
  • 关于开展人工智能专业人员“自然语言及语音处理设计开发工程师”专项培训的通知
  • 2.Ansible的copy模块,我最常用的模块
  • 动能资讯 | 智能音箱—万物物联新纽带
  • SSL证书 免费
  • MacOS14 Sonoma 安装 Flutter 开发环境
  • CRM助力销售:提升效率与业绩的双刃剑!
  • undo log 具体怎么回滚事务,如何查询慢 SQL 产生的原因
  • 1688API接口系列,1688开放平台接口使用方案(商品详情数据+搜索商品列表+商家订单类)