如何将NULL作为变量从PHP发送到SQL?

Joe*_*oel 12 php mysql

我想将值"NULL"发送到mySQL中的列.

   $ParentEventID = "NULL";

   mysql_query("UPDATE events SET 
     ParentEventID = '$ParentEventID'");
Run Code Online (Sandbox Code Playgroud)

该列保持默认为"0".我将列设置为接受NULL,我可以使用NULL复选框编辑单元格.

我不需要将默认值设置为NULL,因为它可能会影响其他地方的代码.

Mic*_*ski 15

你是在正确的轨道上制作"NULL"一个字符串.如果你需要设置它NULL,然后删除周围的qoutes $ParentEventID.

mysql_query("UPDATE events SET ParentEventID = $ParentEventID");
Run Code Online (Sandbox Code Playgroud)

但是,在这样做之前请确保其值$ParentEventID === NULL.

  • @Joel通过删除单引号,字符串`NULL`作为MySQL关键字"NULL"传入.如果将单引号保留为"'NULL",MySQL会将其解释为字符串值.如果它进入整数列或布尔列,我想这被解释为值'0'. (3认同)
  • 伟大的!就这样做到了。那么...通过删除引号到底发生了什么?-好的,我看到引号使它成为一个字符串。多谢你们。当SO允许我在10分钟内接受你的回答时 (2认同)