Bij een Insert op een tabel met auto_increment veld komt MySQL met een 1064 error. Daarop heb ik met phpmyadmin een record in gevoerd en gezien dat deze er het volgende van maakt:
INSERT INTO TABLE ('id','name','etc') VALUES (NULL, 'Piet', 'verder')
(Het id veld is een auto_increment veld)
Nu zit het hem in die NULL, als ik die met quotes invoer dan is het een string en als ik de constante NULL opgeef dan is die leeg (maar blijkbaar geen NULL)
Weet iemand hoe je dit oplost, zonder die auto_increment er uit te kieperen.
Jouw eigen query is sowieso niet goed, vanwege de aanhalingstekens om de veldnamen. En dat ie bij NULL geen auto_increment doet is wel raar. Weet je zeker dat auto_increment op die row aan staat (domme vraag sorry). En zijn er niet te veel rijen voor het type? Dus stel sid is INT(3) en er staan al 1 miljoen rijen in, dan wil die ook nog wel eens problemen geven :-)
Verder vallen de 3 afsluitende aanhalingstekens in de tweede query me op (achter "PHP 5.1.6"). Dat hoort niet.
De grap is dat die aanhalingstekens geen probleem geven bij een select statement, ik zal ze eens weghalen.
Maar phpmyadmin zet er ook tekens om, andere waar ik de naam niet van weet-
De 2e query heb ik gewoon gekopieerd uit het phpmyadmin venster, want na het uitvoeren laat hij deze gewoon in een venster zien. Dus inderdaad met die extra quotes, was mij niet direct opgevallen
Zonder die vage backtics moet ie ook werken.
INSERT INTO stat_server (name, ipno, port, admin, software) VALUES ('localhost', '127.0.0.1', '80', 'UsbWebserver', 'Apache/2.2.0 (Win32) PHP/5.1.6')