Erreur ! SQLSTATE[HY000]: General error:

Résolu/Fermé
LaChaux78 Messages postés 569 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 25 octobre 2024 - 23 févr. 2023 à 17:14
LaChaux78 Messages postés 569 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 25 octobre 2024 - 23 févr. 2023 à 23:15

Bonjour, En voulant faire un INSERT pour un nouvel adhérent je reçois ce message.

Erreur ! SQLSTATE[HY000]: General error: 1364 Field 'mail' doesn't have a default value

Je ne comprends pas pourquoi, je vois simplement qu'il s'agit de l'adresse mail qui n'a pas de valeur par défaut. Que faut-il faire ? je vous envoie ma table SQL concernée. Je vous remercie.

mysql> show full columns from cdc_personnes;
+---------+-------------+--------------------+------+-----+---------+----------------+---------------------------------+-----------------------------------------+
| Field   | Type        | Collation          | Null | Key | Default | Extra          | Privileges                      | Comment                                 |
+---------+-------------+--------------------+------+-----+---------+----------------+---------------------------------+-----------------------------------------+
| idpers  | int         | NULL               | NO   | PRI | NULL    | auto_increment | select,insert,update,references | ID de la personne                       |
| nom     | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Nom de la personne                      |
| prenom  | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Prénom de la personne                   |
| email   | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | e-mail de la personne                   |
| dnaiss  | date        | NULL               | NO   |     | NULL    |                | select,insert,update,references | Date de naissance de la personne        |
| telf    | varchar(20) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Téléphone fixe de la personne           |
| telm    | varchar(20) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Téléphone mobile de la personne         |
| adr1    | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Adresse de la personne                  |
| adr2    | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Complément d'adresse de la personne     |
| lieudit | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Eventuel lieu-dit                       |
| cpostal | varchar(5)  | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Code postal de résidence de la personne |
| ville   | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Ville de résidence de la personne       |
| pseudo  | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Pseudo de l'adhérent                    |
| passwd  | varchar(45) | utf8mb4_general_ci | NO   |     | NULL    |                | select,insert,update,references | Mot de passe de l'adhérent              |
| mail    | int         | NULL               | NO   |     | NULL    |                | select,insert,update,references | Mets à 1 lors de l'envoi de mail        |
+---------+-------------+--------------------+------+-----+---------+----------------+---------------------------------+-----------------------------------------+
15 rows in set (0.01 sec)

3 réponses

jordane45 Messages postés 38262 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 octobre 2024 4 693
23 févr. 2023 à 17:47

Bonjour,

Ben....  soit tu définis une valeur par défaut sur ce champ dans ta table

Soit tu envoies une valeur pour ce champ lors de ta requête INSERT ( même si tu ne mets qu'une string vide )


0
jordane45 Messages postés 38262 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 octobre 2024 4 693
Modifié le 23 févr. 2023 à 17:49

Dailleurs..ton champ mail est de type 'int' ?

Donc c'est un nombre que tu veux y stocker ?,

1
yg_be Messages postés 23295 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 28 octobre 2024 1 548
23 févr. 2023 à 18:11

Ou accepter que le champ contienne une valeur NULL.

0
LaChaux78 Messages postés 569 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 25 octobre 2024 32
Modifié le 23 févr. 2023 à 20:09

Bonjour merci de vos réponses. Mon champ email est de type varchar. J'ai modifié ma requète INSERT pour qu'elle accepte une string vide mais voici l'erreur retournée.

En fait cela concerne l'adresse mail des membres email.

Integrity constraint violation: 1048 Le champ 'email' ne peut être vide (null)

0
jordane45 Messages postés 38262 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 27 octobre 2024 4 693
Modifié le 23 févr. 2023 à 20:46

Tout à l'heure ça concernait le champ mail 

Maintenant ça concerne le champ email 

Donc c'est un Nouveau message d'erreur ..  mais la réponse sera la même...

0
LaChaux78 Messages postés 569 Date d'inscription lundi 25 juillet 2016 Statut Membre Dernière intervention 25 octobre 2024 32
23 févr. 2023 à 23:15

Merci beaucoup pour votre aide.

Cordialement.

0