Как я могу увеличить int в ячейке базы данных MySQL? Я знаю, что автоинкремент бесполезен, потому что я никогда не хочу добавлять новую строку, просто обновлять существующую. В настоящее время я использую это (POST var используется для уточнения, проверено в реальном коде):
$columnToUpdate = 'type'.$_POST['voteid'];
$query = "UPDATE myTable $columnToUpdate = $columnToUpdate+1 WHERE id=1;";
if(!mysql_query($query)) {
echo json_encode(array('success' => false, 'message' => 'Update failed: '.mysql_error()));
exit;
}
В базе данных у меня есть 6 полей: id, type1, type2, type3, type4, type5 и одна строка с идентификатором, установленным в 1. Цель состоит в том, чтобы получить число (1-5) и создать ссылку в правильный столбец перед обновлением поля. В результате получается Update failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '=type4+1 WHERE id=1' at line 1
, поэтому я думаю, что значение поля не выводится должным образом до его увеличения.
Как только это сработает, мне также нужно будет уменьшить поле таким же образом, если только его значение не равно 0. Так что для бонусных баллов я могу сделать все это в одном запросе или лучше разделить его до