MySQL error 1364
Fermé
LeGamerDu62
Messages postés
16
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
22 mai 2021
-
20 mai 2021 à 20:18
jordane45 Messages postés 38370 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 janvier 2025 - 22 mai 2021 à 11:38
jordane45 Messages postés 38370 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 5 janvier 2025 - 22 mai 2021 à 11:38
A voir également:
- Error 1364 mysql
- Cmos checksum error ✓ - Forum Carte-mère/mémoire
- Error 0x80070643 - Accueil - Windows
- Cpu over temperature error - Forum Matériel & Système
- Error 10 pioneer ✓ - Forum Autoradio
- Fan error lenovo - Forum Refroidissement
5 réponses
jordane45
Messages postés
38370
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2025
4 722
20 mai 2021 à 20:27
20 mai 2021 à 20:27
Bonjour
Qu'est-ce que tu ne comprends pas ?
Dans certaines de tes tables le champ en question est défini comme ne pouvant pas être nul par contre tu n'y a pas précisé une valeur par défaut.
Cela implique que lorsque tu fais des insertion dans cette table tu dois obligatoirement soit mettre une valeur nulle pour ce champ soit une valeur tout court mais tu ne peux pas ne pas préciser le champ dans tes requêtes insert...
Qu'est-ce que tu ne comprends pas ?
Dans certaines de tes tables le champ en question est défini comme ne pouvant pas être nul par contre tu n'y a pas précisé une valeur par défaut.
Cela implique que lorsque tu fais des insertion dans cette table tu dois obligatoirement soit mettre une valeur nulle pour ce champ soit une valeur tout court mais tu ne peux pas ne pas préciser le champ dans tes requêtes insert...
LeGamerDu62
Messages postés
16
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
22 mai 2021
20 mai 2021 à 21:30
20 mai 2021 à 21:30
Bonsoir,
Ces champs sont non nulles de base, mais il s'agit d'ID et donc de clés primaires (et étrangères si on parle d'une table liées), donc mon auto_increment devrait appliquer une valeur automatiquement à mon ID lorsque je crée un enregistrement
Ces champs sont non nulles de base, mais il s'agit d'ID et donc de clés primaires (et étrangères si on parle d'une table liées), donc mon auto_increment devrait appliquer une valeur automatiquement à mon ID lorsque je crée un enregistrement
jordane45
Messages postés
38370
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2025
4 722
Modifié le 21 mai 2021 à 10:04
Modifié le 21 mai 2021 à 10:04
et il devine comment à quel ID il doit se rattacher ?
par exemple ... quand tu créés un CLIENT ... comment il choisi à quel ADRESSE il doit se lier ?
par exemple ... quand tu créés un CLIENT ... comment il choisi à quel ADRESSE il doit se lier ?
LeGamerDu62
Messages postés
16
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
22 mai 2021
21 mai 2021 à 13:49
21 mai 2021 à 13:49
Dans mon premier code, je précise dans un ALTER TABLE de la table client que idadresse est une foreign key provenant de la table adresse :
ALTER TABLE Client
ADD CONSTRAINT Client_Adresse0_FK
FOREIGN KEY (idadresse)
REFERENCES Adresse(idadresse);
jordane45
Messages postés
38370
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2025
4 722
21 mai 2021 à 14:41
21 mai 2021 à 14:41
Oui et.. ?
Si il y a plusieurs adresses dans ta table adresse.. il choisi laquelle ?
Si il y a plusieurs adresses dans ta table adresse.. il choisi laquelle ?
LeGamerDu62
Messages postés
16
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
22 mai 2021
21 mai 2021 à 16:17
21 mai 2021 à 16:17
J'en ai parlé avec plusieurs personnes et j'ai un nouveau problème. Lorsque je crée un client et une adresse dans leurs tables respectives (donc avec des ID qui leur sont attribuées), les ID correspondants sont censé s'inscrire dans une table "possèder" afin de les lier. Le code se présente comme ceci :
Or lorsque je rajoute des données dans Adresse et Client, les ID ne se crée pas dans la table possèder et je ne sais pas comment l' "actualiser" ?
CREATE TABLE posseder(
idadresse Int NOT NULL ,
idpersonnes Int NOT NULL
,CONSTRAINT posseder_PK PRIMARY KEY (idadresse,idpersonnes)
,CONSTRAINT posseder_Adresse_FK FOREIGN KEY (idadresse) REFERENCES Adresse(idadresse)
,CONSTRAINT posseder_Personne0_FK FOREIGN KEY (idpersonnes) REFERENCES Personne(idpersonnes)
)ENGINE=InnoDB;
Or lorsque je rajoute des données dans Adresse et Client, les ID ne se crée pas dans la table possèder et je ne sais pas comment l' "actualiser" ?
jordane45
Messages postés
38370
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2025
4 722
21 mai 2021 à 16:27
21 mai 2021 à 16:27
Encore une fois... les foreign key.. ce n'est pas magique.... ce n'est pas "automatique" ...
Lorsque tu créés un client ... tu dois récupérer l'id qui a été généré
idem avec l'adresse
Ensuite, tu pourras faire un insert de ces deux id dans ta table "poosseder"
Lorsque tu créés un client ... tu dois récupérer l'id qui a été généré
idem avec l'adresse
Ensuite, tu pourras faire un insert de ces deux id dans ta table "poosseder"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
LeGamerDu62
Messages postés
16
Date d'inscription
mardi 12 janvier 2016
Statut
Membre
Dernière intervention
22 mai 2021
22 mai 2021 à 10:17
22 mai 2021 à 10:17
Justement, lorsque je veux les insérer manuellement, j'ai une erreur de violation de clé étrangères, alors que je sélectionne bien les ID correspondants.
jordane45
Messages postés
38370
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
5 janvier 2025
4 722
22 mai 2021 à 11:38
22 mai 2021 à 11:38
Je pense que tu as trop de contraintes sur tes tables et qu'elles se marchent dessus....
Revois ton schéma et ne mets pas des Foreign Key ou des Contraintes dans tous les sens...
*
Revois ton schéma et ne mets pas des Foreign Key ou des Contraintes dans tous les sens...
*