En plus de la réponse de Sabeen :
L'identifiant de la première colonne est votre clé primaire.
N'insérez pas ''
dans la clé primaire, mais insérez null à la place.
INSERT INTO users
(`id`,`title`,`firstname`,`lastname`,`company`,`address`,`city`,`county`
,`postcode`,`phone`,`mobile`,`category`,`email`,`password`,`userlevel`)
VALUES
(null,'','John','Doe','company','Streeet','city','county'
,'postcode','phone','','category','[email protected]','','');
S'il s'agit d'une clé d'auto-incrémentation, cela résoudra votre problème.
Si ce n'est pas le cas, faites id
une clé d'auto-incrémentation, et insérez toujours null
dedans pour déclencher une auto-incrémentation.
MySQL a un paramètre pour auto-incrémenter les clés uniquement sur null
insert ou sur les deux inserts de 0
et null
. Ne comptez pas sur ce paramètre, car votre code peut casser si vous changez de serveur.
Si vous insérez null
votre code fonctionnera toujours.
Voir :http://dev.mysql.com /doc/refman/5.0/en/example-auto-increment.html