Problem mit auto_increment und DEFAULT-Wert

Kai-Behncke

Erfahrenes Mitglied
Hallo liebe Leute,
ich bemühe mich gerade mysql zu lernen, habe mir dafür das mysql-Praxisbuch von Franzis gekauft.
Nun folgendes:
Ich möchte eine Tabelle erstellen, in welcher ein Primärschlüssel vorliegt, welcher sich automatisch um eins erhöht (bei jedem neuen Datensatz) und dessen Default-Wert bei 0 liegt.
In dem Lehrbuch steht folgender Code:



CREATE TABLE `hersteller` (
`ID` INT DEFAULT '0' NOT NULL AUTO_INCREMENT ,
PRIMARY KEY ( `ID` )
) TYPE = innodb

bloß, wenn ich das so eingebe, bekomme ich die Fehlermeldung "#1067 - Invalid default value for 'ID'"

Wenn ich nur "Auto_Increment" (ohne "Default '0' NOT NULL")
oder aber nur "Default '0' NOT NULL" ohne "Auto_Increment" eingebe, dann klappts.

Wo liegt der Fehler? Liegt das vielleicht an der mysql-Version?
Ich meine, der Code steht immerhin so im Buch?
Wer weiß rat?
 
Ist doch auch irgendwie unsinnig oder nicht?
Du willst einen automatischen Wert, sagst aber, dass 0 default ist.
Die ID wird durch auto_increment sofort beim Anlegen des Datensatzes vergeben, also ist da ein DEFAULT-Wert sinnlos.

Auch in Büchern begegnet man manchmal Fehlern.
 
Zurück