dedlfix: MySQL: Werte des letzten Eintrags auslesen

Beitrag lesen

echo $begrüßung;

http://forum.de.selfhtml.org/archiv/2002/12/t33517/#m182504

Wenn es darum geht, dass auto_increment am Ende der Skala einfach immer die gleichen Werte liefert, so hab ich unter MySQL 5.0.60 folgendes ermittelt:

CREATE TABLE IF NOT EXISTS test (
    foo tinyint(3) unsigned NOT NULL auto_increment,
    bar varchar(10) NOT NULL,
    PRIMARY KEY  (foo)
  ) AUTO_INCREMENT=254

Der auto_increment-Wert steht auf 254 und symbolisiert damit, dass schon 253 IDs "verbraucht" sind. Die Spalte foo ist als (vorzeichenloses) TINYINT absichtlich viel zu klein gewählt, um das Verhalten zu demonstrieren.

INSERT INTO test (bar) VALUES
  ('Tom'),
  ('Sven'),
  ('SELFHTML')

fügt Tom (254) und Sven (255) ein und verabschiedet sich dann mit einem »Duplicate entry '255' for key 1«. Der auto_increment-Wert in der Tabellenstruktur steht auf 256 und bewegt sich auch bei weiteren Insert-Versuchen nicht weiter nach oben. Die Versuche schlagen jedoch alle mit der bereits erwähnten Fehlermeldung fehl (ja, 255, trotz der anderswo stehenden 256).

Zum Verhalten von auto_increment am Ende des Universums fand ich im MySQL-Handbuch keine Aussage.

Mein Fazit: Wer seine Spalten mit unangemessenem Wertebereich wählt, ist selbst Schuld. Wenn er dann noch Fehlermeldungen ignorieren sollte, ...

echo "$verabschiedung $name";