gpt4 book ai didi

PHP PDO 检查 mySQL 表中的多个列并创建不存在的列

转载 作者:可可西里 更新时间:2023-11-01 08:20:49 26 4
gpt4 key购买 nike

寻找一种方法来检查数据库中的表是否已使用所需的列进行组装。

我构建了这个函数:

function verifydbtable($table,$fields){
global $fsdbh;
foreach($fields as $field => $type){
$verify = $fsdbh->prepare("ALTER TABLE `$table` ADD `$field` $type;");
$verify->execute();
}
return 1;
}

其中 $table 是要更新的表,$fields 包含要检查的所有字段的数组。 $type 包含字段的类型,例如。 VACHAR(20)

该函数适用于每个字段,直到它遇到一个已经存在的字段。然后返回 false。

问题是它不会检查数组中剩余的列。我们如何让它继续检查剩余的字段。

由于如果列已经存在,它将返回错误 #1060 - Duplicate column name 'subtitle' 这是它应该做的。如果返回此错误,我们需要跳到数组中的下一项。

通俗地说,我们需要这个,但当然这不是 mySQL 语句。

prepare("ALTER TABLE `$table` ADD IF NOT EXIST `$field` $type");

最佳答案

您可以尝试为查询指定IGNORE:

$fsdbh->prepare("ALTER IGNORE TABLE `$table` ADD `$field` $type;");

关于PHP PDO 检查 mySQL 表中的多个列并创建不存在的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12096830/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com