Als «mysql» getaggte Fragen

7
MySQL: Wie dekrementiere ich eine vorzeichenlose int-Spalte?

Ich habe eine Tabelle mit einer Spalte unsigned int, nennen wir sie col1. Ich möchte die Spalte um eine Zahl dekrementieren. Wenn der Wert nach dem Dekrementieren kleiner als 1 ist, setzen Sie ihn auf 1. So: UPDATE `tbl1` SET `col1` = GREATEST(1, `col1`-3); Dies funktioniert gut, aber wenn col1 0...

7
Warum führt diese Abfrage zu einem Deadlock?

Ich gebe unten die rohe MySQL-Abfrage und auch den Code an, in dem ich das programmgesteuert mache. Wenn zwei Anforderungen gleichzeitig ausgeführt werden, führt dies zu folgendem Fehlermuster: SQLSTATE [40001]: Serialisierungsfehler: 1213 Deadlock beim Versuch, eine Sperre zu erhalten; versuchen...