2011-05-10 10 views
1

Ce type de champ:`id` int (10) NOT NULL auto_increment

`id` int(10) NOT NULL auto_increment 

... accepte n'accept pas ('') sur un serveur/base de données et un autre serveur/base de données accepte.

Y at-il une sorte d'incohérence quelque part dans la configuration? J'ai essayé différentes versions de serveur - 5.1.52, 5.1.57, 5.5. Comment les rendre cohérents?

+1

Pourquoi est-ce que vous essayez de passer une valeur particulière à elle ?! Il est déjà auto-incrémenté, il suffit de l'ignorer - il sera automatiquement rempli. Btw, chaîne vide n'est pas un nombre entier - pourquoi le mettre là alors? Il est supposé que vous alimenter votre voiture avec de l'essence, et non avec de l'eau. L'avez-vous déjà alimenté avec de l'eau? Nan? Mais pourquoi avec rdmbs vous voulez remplir le champ avec le type de valeur * incorrect? – zerkms

+4

'DEFAULT' et' NULL' sont des espaces réservés connus pour déclencher des contraintes par défaut ... –

Répondre

1

si votre champ est de autoincrement de type alors vous devriez simplement sauter il.

par exemple vous devez insérer un commentaire où id est 'autoincrement' champ alors:

$ add = "INSERT INTO commentaires (commentaire, author_id, article_id) VALEURS ('". $ comment. "',". $ authorID. ",". $ articleID. ")";

$ result = mysql_query ($ ajouter)

...