(MySQL) Zahl automatisch erhöhen ohne auto increment?
muenzchen
- datenbank
Hallo!
Ich möchte eigentlich was ganz einfaches machen, nämlich die Klicks auf einen Link zählen.
Ich weiß, dass das mit auslesen, Zahl++ und wieder eintragen geht, aber mir kommt das irgendwie umständlich vor.
auto increment kann ich nicht verwenden, da ich mehrere Klicks in der Tabelle speichern will.
Gehts vielleicht doch irgendwie einfach er?
MfG, muenzchen
Hi,
Ich weiß, dass das mit auslesen, Zahl++ und wieder eintragen geht, aber mir kommt das irgendwie umständlich vor.
klar doch. Innerhalb eines UPDATE-Statements kannst Du ebenfalls Berechnungen anstellen, ohne den Wert vorher auslesen zu müssen.
Cheatah
Supi, danke!
Das wusste ich gar nicht!
Ich muss sagen, MySQL ist spitze :D
MfG, muenzchen
Hi,
Ich muss sagen, MySQL ist spitze :D
hm, ich würde eher sagen: MySQL ist in der Lage, diese Standard-Aufgabe befriedigend zu bewältigen. Zumindest kenne ich kein DBMS, welches diese Form der Datenmanipulation nicht beherrschen würde... ;-)
Cheatah
Hallo Cheatah,
Zumindest kenne ich kein DBMS, welches diese Form der Datenmanipulation nicht beherrschen würde... ;-)
Ich würde es anders ausdrücken: Alles, was das nicht kann, hat die Bezeichnung DBMS IMHO nicht verdient. ;-)
Christian
Hi,
Zumindest kenne ich kein DBMS, welches diese Form der Datenmanipulation nicht beherrschen würde... ;-)
Ich würde es anders ausdrücken: Alles, was das nicht kann, hat die Bezeichnung DBMS IMHO nicht verdient. ;-)
so kann man es auch umschreiben ;-) AFAIK ist das sogar in ANSI-SQL so definiert; man möge mich korrigieren.
Cheatah
Hallo,
kommt darauf an, was für eine Tabelle Du benutzt. Wenn Du eine LowLevel-Datei nimmst, musst Du selber auslesen, incrementieren und erhöhen. Wenn Du eine Datenbank nimmst (und autoincrement deutet ja darauf hin), dann kann das der Update-Befehl für dich machen. Der kapselt das Auslesen, Erhöhen und Zurückspeichern in einer einzigen Aktion.
...
$sql= "Update table set feld = feld+1 where id = xyz;";
$ok=mysql_query($sql, $conn);
...
Liebe Grüße aus http://www.braunschweig.de
Tom