python-3.x - 在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
字符串。
解决方案
这在技术上不正确,但对我有用。 ["bob","jones","",507]
当从数据库中检索时,python 将识别它在None
哪个是Null
. 但是在mysql中它是一个空字符串。