OPDATERING Grunden til, at OP får en syntaksfejl, er fordi et komma blev udeladt efter erklæringen af adgangskodekolonnen:
CREATE TABLE IF NOT EXISTS `terrier`.`admin` (
`adminId` int(11) NOT NULL auto_increment,
`userName` varchar(50) NOT NULL,
`password` varchar(50) NOT NULL <-- should be a comma here
PRIMARY KEY (`adminId`))
BEMÆRKNINGER OM INDSÆTNING I FELTER MED AUTOMATISK INKREMENT
Du forsøger at indsætte adminId
i et felt med automatisk stigning . Angiv ikke en værdi for det, MySQL tager sig automatisk af det.
INSERT INTO admin (`userName`, `password`) VALUES ('wardens', 'Bega&1120');
Hvis du eksplicit vil placere en værdi i din INSERT
forespørgsler til feltet med automatisk stigning, du har tre valg baseret på at angive feltet til at være NOT NULL
- ''
, 0
eller NULL
. Her er referencen.
.
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES ('', 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (0, 'wardens', 'Bega&1120');
INSERT INTO admin (`adminId`, `userName`, `password`) VALUES (NULL, 'wardens', 'Bega&1120');
OPDATERING Yderligere test (som foreslået af @eggyal) afslører, at enhver værdi kan indsættes i auto-increment-felter uanset den specificerede databasemotor.