【发布时间】:2025-12-08 11:40:02
【问题描述】:
如何使用 PHP + mysqli 数据库查找列是否存在。
我一直在尝试这些以及评论部分..但似乎没有任何效果。
$column1="address";
$chkcol="SELECT * FROM `table_name` LIMIT 1";
/* $chktable="SELECT * FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = `db_name` AND TABLE_NAME = `table_name` AND COLUMN_NAME = `$col_name`";*/
$mycol = mysqli_fetch_array($chkcol);
/* echo $val=mysqli_query($conn,$chktable);
echo $val; */
if(isset($mycol['$column1']))
{
$message="Adress column already exists.";
echo $message;
}
else
{
echo "Column doesn't exist";
}
如果有任何短代码或简单代码可以使其工作。然后告诉我。 这不是 MySQL,而是 MySQLi(Procedural),因为我发现的早期答案是 MySQL (Obj Oriented) 不起作用。
【问题讨论】:
-
你应该使用空的
-
查询 information_schema 是正确的方法,不知道你为什么放弃它
-
您在尝试获取结果之前尚未执行查询
-
在注释的 information_schema 查询中,您使用的是未定义的变量
$col_name