我有一个表单,它有一些可选的输入,用户可以跳过更新,这些输入可以是空的,问题是当我更新一个设置为 NULL 的列时,查询会将那个列更新为空白 ""而不是将其保留为空。
我关心的是 是如何高效 在 MySQL 特别大的表上,当值设置为空白 VS 时性能是否有差异无效的。 如果是,那么我将确保所有空输入都更新为 NULL。
这是我用来避免空白的代码,有更好的方法吗?
#Avoid blank with NULL
$value1 = !empty($_POST['input1']) ? $_POST['input1'] : NULL;
$value2 = !empty($_POST['input2']) ? $_POST['input2'] : NULL;
最佳答案
这里有一个很好的讨论: MySQL: NULL vs ""
I found out that NULL vs "" is insignificant in terms of disk-space and performance.
还有一些人在讨论搜索“空位”比检查字符串是否为 ''
更快。这个问题已经有 9 年了,所以从那时起我们在硬件方面已经取得了长足的进步,差异可能可以忽略不计。作为 DBA,我建议适本地使用 null :)
关于php - 避免使用空值 VS NULL 更新 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51596426/