odpowiedź do
sposobu 2:
zakładając, że masz przykładową tabele:
CREATE TABLE `table_name` (
`id` INTEGER(11) NOT NULL AUTO_INCREMENT,
`ile` INTEGER(11) DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `id` (`id`)
)ENGINE=InnoDB
AUTO_INCREMENT=1;
oraz dodane 2 wiersze z danymi w tabeli, przy użyciu:
INSERT INTO `table_name`(`id`) VALUES(1),(2);
COMMIT;
możesz aktualizować wartość z kolumny `ile` w taki sposób:
UPDATE table_name SET ile=ile+1 WHERE id = 2;
COMMIT;
albo nawet akualizować kilka wierszy jednocześnie:
UPDATE table_name SET ile=ile+1 WHERE id IN (1,2);
COMMIT;
Uważaj na właściwości kolumny `ile`, np. gdy kolumna ta jest zdefiniowana tak:
`ile` INTEGER(11) DEFAULT NULL wtedy podane wcześniej zapytania UPDATE nie spowodują zmiany wartości z NULL na 1 przy pierwszym wykonaniu zapytania, ani przy każdym następnym.