在我的PHP代码查询中,当我放置一个空值时,我遇到了一些错误 进入表格。列名称" number1"," number2"和" number3"是整数,可以具有空值。
如果没有空值,查询将起作用
查询是这样的 插入表格(number1,number2,number3)值(1,2,3);
但是当我在PHP上的输入表单上留下一个空白值时,
例如,我不会为列" number2"设置值,查询将会显示 像这样。
插入表格(number1,number2,number3)值(1,,3);
它表示ERROR:语法错误在或附近"," SQL状态:42601
有人知道如何解决这个问题吗?
这个查询可能是解决方案,但还有其他方法吗? 插入表(number1,number2,number3)值(1,null,3);
因为我有这么多的变量,并且有点懒,放置一些条件,比如当该变量返回空值时,则值=" null"
答案 0 :(得分:15)
通过键入NULL:
来插入NULL
值
INSERT INTO table(number1,number2,number3) VALUES (1,NULL,3);
如果你有一个变量,当该变量为空时你要插入一个NULL
值,你可以使用NULLIF
将变量用单引号括起来为此做准备(这是一个有点脏的解决方案因为你必须将变量视为空字符串,然后将其转换为整数):
INSERT INTO table(number1,number2,number3) VALUES (1,NULLIF('$var','')::integer,3);