PHP-检查数据库列是否为空

时间:2018-09-21 14:44:36

标签: php mysql sql database

如何检查数据库列是否为空?

我尝试了以下操作:

$check = "SELECT Name FROM data";
$name = mysqli_query($con, $check);
if(is_null($name) == true){
   //run this code 
}

我的方法是选择“名称”列,然后检查该列是否返回NULL。出于某种原因,当我输入“ is_null($ name)== false”时,if语句将运行,但是我的数据库中肯定没有数据,因此肯定会返回true,因为它应该为NULL。我在这里做什么错了?

如何使用if语句检查数据库的列是否为空?

谢谢。

4 个答案:

答案 0 :(得分:0)

您将需要使用empty()函数。像这样将is_null更改为空:

$check = "SELECT Name FROM data";
$name = mysqli_query($con, $check);
if(empty($name['Name'])){
   //run this code 
}

答案 1 :(得分:0)

您将结果仅视为一列。看起来更像

$check = "SELECT Name FROM data";
$result = mysqli_query($con, $check);
$row = mysqli_fetch_assoc($result)
if($row && $row["Name"] == null){
   //run this code 
}

答案 2 :(得分:-1)

$check = "SELECT Name FROM data";
$name = mysqli_query($con, $check);
$nameAssoc = mysqli_fetch_assoc($name);
if(empty($NameAssoc['Name'])){
   //run this code 
}

答案 3 :(得分:-1)

您可以修改mysql查询,检查是否有任何列为空。

$check = "SELECT count(*) FROM data where Name is not null and Name != '' ";
$name = mysqli_query($con, $check);
if($name > 0 ){
   //it means Name column is not null
}else{
// Name column is null
}