python - 为什么 execute() 附加空值而 executemany() 不附加?
问题描述
通过 python 使用 MySQL 时,在使用 execute() 函数时,空值会在特定表中更新,但在使用 executemany() 时,空值会返回错误。
工作命令:
mycursor = mydb.cursor()
mycursor.execute("INSERT INTO users (name, fav) VALUES('John', null)"
mydb.commit()
不起作用的代码:
mycursor = mydb.cursor()
sql = "INSERT INTO users (name, fav) VALUES(%s, %s)"
val =[
('Samantha', 154),
('Thalia', 155),
('Jacobs', null),
('Jamie', null)
]
mycursor.executemany(sql, val)
mydb.commit()
产生的错误如下:
Traceback(最近一次调用最后):文件“demo_python.py”,第 14 行,在('Jacobs',null),NameError:名称'null'未定义
解决方案
推荐阅读
- flutter - 使用和不使用 textEditingController 保存后,textField 值(输入)不断消失
- java - 如何在 Netbeans 中使用 LGoodDatePicker 插件
- android - Android:如何从现有的 Uri 复制文件?
- python - 由于布兰卡错误,无法在 Linux Mint 上使用 Python 2.7 安装 folium
- css - 使用内联 SVG 遮罩图像或视频
- android - EditText 和焦点
- qt - “when”子句设置默认状态的 QML 状态更改
- r - dplyr 为每个类别选择前 10 个值
- scala - 斯卡拉。如何在成功时从 Future 获取值,在失败时抛出异常?
- python - 使用“brew install ansible”命令无法完美安装 ansible 在 MacOS 中不起作用?错误:-sh:/usr/local/bin/ansible:没有这样的文件或目录