首页 > 解决方案 > 在python中插入NULL会出错

问题描述

我正在尝试通过 python 和 mysql 连接器插入一个空值。

update_query = ''' update people.names set fname=%s, lname=%s,address=%s where person_id = %s;'''
params = ['Bob', 'Jones', None, 507]
mysql_db.update_statement(update_query,params)

给出以下错误。

File "/usr/lib/python3/dist-packages/mysql/connector/connection.py", line 1536, in cmd_stmt_execute
result = self._handle_binary_result(packet)
File "/usr/lib/python3/dist-packages/mysql/connector/connection.py", line 1475, in _handle_binary_result
raise errors.get_exception(packet)
mysql.connector.errors.ProgrammingError: 1210 (HY000): Incorrect arguments to mysqld_stmt_execute

我也试过params = ['Bob', 'Jones', 'Null', 507]但这'Null'是一个字符串,这不是我需要的。我正在尝试添加不NULL作为NULL字符串。

标签: python-3.xmysql-pythonmysql-connector-python

解决方案


这在技术上不正确,但对我有用。 ["bob","jones","",507]当从数据库中检索时,python 将识别它在None哪个是Null. 但是在mysql中它是一个空字符串。


推荐阅读