在python中插入NULL会导致错误

时间:2019-12-07 00:14:42

标签: python-3.x mysql-python mysql-connector-python

我正在尝试通过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而不是字符串。

1 个答案:

答案 0 :(得分:0)

这在技术上不正确,但对我有用。 ["bob","jones","",507]从数据库中检索时,python会在None的{​​{1}}处识别出它。但是在mysql中,它是一个空字符串。