我试图通过检查是否存在来添加列.如果不是,它应该通过下面的代码给出它已经存在的消息.
$prefix = 'vm_';
$col_name = 'checking';
$col = "SELECT ".$col_name." FROM ".$prefix."users";
if (!$col){
$insert_col = "ALTER TABLE ".$table." ADD ".$col_name." DATETIME NOT NULL";
mysql_query($insert_col);
echo $col_name.' has been added to the database';
} else {
echo $col_name.' is already exists';
}
Run Code Online (Sandbox Code Playgroud)
但它不会添加任何列并直接显示该列已存在的消息.
你永远不会执行你的查询,你的条件是你的查询字符串:
if (!$col) { //always false, since a nonempty string is always truthy
Run Code Online (Sandbox Code Playgroud)
这是最终的代码。有愚蠢的错误;我没有用mysql_query的$col
$prefix = 'vm_';
$col_name = 'checking';
$col = mysql_query("SELECT ".$col_name." FROM ".$prefix."users");
if (!$col){
//$insert_col = "ALTER TABLE ".$table." ADD ".$col_name." DATETIME NOT NULL";
mysql_query("ALTER TABLE ".$prefix."users ADD ".$col_name." DATETIME NOT NULL");
echo $col_name.' has been added to the database';
} else {
echo $col_name.' is already exists';
}
Run Code Online (Sandbox Code Playgroud)