我的SQL表
table->requirement
id label_name label_value requirement_id
103 budget 5000 4
104 specialist dentist 4
105 treatment clinic 4
106 expertise criminal 5
107 charges 5100 5
我正在尝试通过label_value
更新此表中的mysql-php
。
我在php中试过这段代码,但它正在运行。
foreach ($data as $columnName => $colValue) {
echo $subQuery .= "UPDATE `$tableName` SET `label_value`='$colValue' where (`label_name`='$columnName' AND `requirement_id`='$id')";
mysql_query($subQuery);
}
获得输出 -
更新
requirement
设置label_value
='医生',其中(label_name
='专家'和requirement_id
='2')更新
requirement
设置label_value
='医生',其中(label_name
='专家'和requirement_id
='2')更新
requirement
设置label_value
='在您家中'(label_name
='约会'和requirement_id
='2')
我不知道这是否正确但我需要在表格中更新此表格。请帮帮我。
答案 0 :(得分:2)
您需要从.
删除.= "UPDATE
,因为它会连接您的查询。
对于循环的第一步,它将生成
UPDATE `$tableName` SET `label_value`='$colValue' where (`label_name`='$columnName' AND `requirement_id`='$id'
此查询有效,但对于第二步,它将生成
UPDATE `$tableName` SET `label_value`='$colValue' where (`label_name`='$columnName' AND `requirement_id`='$id' UPDATE `$tableName` SET `label_value`='$colValue' where (`label_name`='$columnName' AND `requirement_id`='$id'
这是错误的语法。
只需使用
foreach ($data as $columnName => $colValue) {
echo $subQuery = "UPDATE `$tableName` SET `label_value`='$colValue' where (`label_name`='$columnName' AND `requirement_id`='$id')";
mysql_query($subQuery);
}
尝试学习mysqli or pdo
,因为mysql已被删除