Bonjour,
J'ai un projet de gestion de salarié à effectuer qui comprend l'affichage, la suppression, la modification, l'ajout via un formulaire d'un salarié.
J'ai créé la base avec les différentes tables avec phpMyAdmin
Afficher: InnoDB free: 3072 kB (6 Enregistrements) carte_orange
Afficher: InnoDB free: 3072 kB (4 Enregistrements) categorie
Afficher: InnoDB free: 3072 kB; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Nature_Contrat`) REFER `asm/nature_contrat`(`ID_Nature_Contrat`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Profil_Contrat`) REFER `asm/profil_contrat`(`ID_Profil_Contrat`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Type_Contrat`) REFER `asm/type_contrat`(`ID_Type_Contrat`) ON DELETE NO ACTION ON UPDATE CASCADE (5 Enregistrements) contrat
Afficher: InnoDB free: 3072 kB (3 Enregistrements) diplome
Afficher: InnoDB free: 3072 kB (0 Enregistrements) emploi
Afficher: InnoDB free: 3072 kB (12 Enregistrements) langue
Afficher: InnoDB free: 3072 kB (2 Enregistrements) nature_contrat
Afficher: InnoDB free: 3072 kB (7 Enregistrements) pole_activite
Afficher: InnoDB free: 3072 kB (9 Enregistrements) prime
Afficher: InnoDB free: 3072 kB (3 Enregistrements) profil_contrat
Afficher: InnoDB free: 3072 kB; (`ID_Langue`) REFER `asm/langue`(`ID_Langue`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_1
Afficher: InnoDB free: 3072 kB; (`ID_Langue`) REFER `asm/langue`(`ID_Langue`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Prime`) REFER `asm/prime`(`ID_Prime`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_2
Afficher: InnoDB free: 3072 kB; (`ID_Prime`) REFER `asm/prime`(`ID_Prime`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Diplome`) REFER `asm/diplome`(`ID_Diplome`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_3
Afficher: InnoDB free: 3072 kB; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Categorie`) REFER `asm/categorie`(`ID_Categorie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_4
Afficher: InnoDB free: 3072 kB; (`ID_Emploi`) REFER `asm/emploi`(`ID_Emploi`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_5
Afficher: InnoDB free: 3072 kB; (`ID_Situation_Familiale`) REFER `asm/situation_familiale`(`ID_Situation_Familiale`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_6
Afficher: InnoDB free: 3072 kB; (`ID_Carte_Orange`) REFER `asm/carte_orange`(`ID_Carte_Orange`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_7
Afficher: InnoDB free: 3072 kB; (`ID_Pole_Activite`) REFER `asm/pole_activite`(`ID_Pole_Activite`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Responsable_Marque`) REFER `asm/responsable_marque`(`ID_Responsable_Marque`) ON DELETE NO ACTION ON UPDATE CASCADE (4 Enregistrements) relation_8
Afficher: InnoDB free: 3072 kB; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Pole_Activite`) REFER `asm/pole_activite`(`ID_Pole_Activite`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_9
Afficher: InnoDB free: 3072 kB; (`ID_Diplome`) REFER `asm/diplome`(`ID_Diplome`) ON DELETE NO ACTION ON UPDATE CASCADE; (`ID_Salarie`) REFER `asm/salarie`(`ID_Salarie`) ON DELETE NO ACTION ON UPDATE CASCADE (0 Enregistrements) relation_10
Afficher: InnoDB free: 3072 kB (2 Enregistrements) responsable_marque
Afficher: InnoDB free: 3072 kB (5 Enregistrements) salarie
Afficher: InnoDB free: 3072 kB (5 Enregistrements) situation_familiale
Afficher: InnoDB free: 3072 kB (2 Enregistrements) type_contrat
Afficher: InnoDB free: 3072 kB (1 Enregistrements) user
ainsi que les pages html et php pour effectuer les différentes opérations.
Le code php fonctionne au niveau de l'affichage et de l'ajout(pour l'instant juste dans la table salarié).
Le fait est que j'ai des tables qui doivent êtres reliées entre elles comme la table contrat(voir ci-dessus) qui doit être relié avec les tables salarie, nature_contrat, type_contrat, type_contrat, profil_contrat et contenir les clés primaires de chacune de ces tables.
Ce que j'ai fait avec la gestion des relations en indexant les clés(voir ci-dessus) mais lorsque je veux faire une suppression dans la table salarié je n'y arrive pas car j'ai une erreur de type:
Erreur MySQL n°1217 : Impossible de supprimer un enregistrement père : une contrainte externe l'empêche.
Alors si quelqu'un connait une méthode pour que tout fonctionne nickel je serais très reconnaissant de m'en faire part.
Merci d'avance.
Configuration: Windows XP
Firefox 2.0.0.14