存储过程 - 在单个查询中使用单个值“1”更新表的所有列

时间:2012-07-17 06:23:06

标签: php stored-procedures triggers

我有一张桌子,里面有近40个字段。我想用单个值更新所有这些字段,即单个查询中的1,我不想在更新查询中指定每一列。

任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:4)

您可以尝试:

$sql = "SHOW COLUMNS FROM sometable";
$fields = mysql_fetch_array(mysql_query($sql));

应该帮助你从表中检索列名,并将它们存储在一个数组中。

 $field_string = implode("='1', ", $fields);

将数组更改为字符串并向其添加"=1"。然后你可以这样运行你的查询:

 $sql = "UPDATE sometable SET {$field_string}";

答案 1 :(得分:0)

根据MySql UPDATE spec,如果没有详细说明您要更新的列,您似乎无法做到。