【发布时间】:2023-03-08 04:26:02
【问题描述】:
在将一些数据从 Python 脚本插入 MySQL 时,我遇到了一个奇怪的错误。它基本上与我要插入的空白变量有关。我认为 MySQL 不喜欢空白变量,但我是否可以将其更改为其他内容,以便它与我的插入语句一起使用?
我可以成功地使用 IF 语句将其变为 0(如果它为空白),但这可能会打乱我计划稍后在 MySQL 中进行的一些数据分析。有没有办法将它转换为NULL 或其他东西以便 MySQL 接受它但不添加任何东西?
【问题讨论】:
-
您尝试将此 NULL 值插入的列是否允许 NULL?如果不是,具体是什么错误?
-
是的,它确实允许为空。我看看我是否没有插入任何东西,它说该列是空的,问题是我的 sql 语句已经构建了。基本上我是从一个文件中提取一堆价格,有时价格是空白的,这意味着没有价格可用。我仍然希望插入详细信息,但不希望插入价格。
-
我的第一个想法是将它们全部归零,但稍后当我进行一些分析并发现免费产品会改变产品的平均价格等时,它会搞砸我。跨度>
-
您遇到的“奇怪错误”到底是什么? “空白”是什么意思?做
print repr(socalled_blank_value)并告诉我们答案。对应列的SQL类型是什么? -
对不起那个约翰。当我打印变量的值它完全空白时,错误是“数据在第 1 行 [SQLCode: 1265], [SQLState: 01000] 的列 'price' 被截断。我不认为有空格,因为如果我输入“if variable ==”“:”,它实际上与这个变量的值匹配。