PHP/MySQL : Update Query where value is missing from WHERE clause

标签 php mysql where-clause

我想我知道这个问题的答案,但想得到确认。

如果您有一个带有 where 子句的简单更新查询,并且 where 子句中的变量值丢失,是否意味着每条记录都会更新?

//let's say $name is empty

UPDATE users SET name= 'Jason' WHERE userid = '$name'

is that the same as 

UPDATE users SET name= 'Jason' WHERE userid = ''

每条记录都会更新的行为吗?

如果是这样,您是否可以在 SQL 中添加任何内容来防止这种潜在的灾难?

感谢指导。

最佳答案

这两个查询都将更新所有 userid 列为空的记录。但这并不意味着 userid 值等于 NULL 的行将受到影响。如果您想对 NULL 列使用 WHERE,请阅读 how to working with NULL values .

关于PHP/MySQL : Update Query where value is missing from WHERE clause,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34197139/

相关文章:

php - 在表单内编辑页面 HTML 表单?

sql-server - SQL Server 显示某些行,并在 where 中包含大小写

php - 如何在 Laravel 中提交表单后重定向确认页面?

php - 比较属性集以找到最佳匹配

php - 如何强制用户下载图像(如下载 pdf)?

php - MYSQL 在另一个表中返回具有列关系数的行

php - 使用动态 URL 到 'activate' 额外的 CSS

mysql - SQL:显示两个表的结果

mysql - 需要建立一个 queerly groupby

mysql - 在完整外连接查询中按日期过滤行 -> 缺少一些结果