Précédent   Forum des professionnels en informatique > PHP > Outils > phpMyAdmin
phpMyAdmin Forum d'entraide sur l'outil phpMyAdmin : installation, utilisation, etc. Avant de poster -> Cours phpMyAdmin
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/06/2011, 14h36   #1
Membre à l'essai
 
Femme
Développeur Web Junior
Inscription : novembre 2009
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Développeur Web Junior

Informations forums :
Inscription : novembre 2009
Messages : 124
Points : 22
Points : 22
Par défaut Definition d'un clé étrangère d'une table sous phpmyadmin

Bonjour,
Je développe une application utilisant phpmyadmin, en fait je crée des offre d'emplois en renseignant un champ domaine d'activité, mon problème c'est que j'ai définit une clé étrangère pour l'offre pour éviter les conflits, car par exemple lors de la suppression d'un domaine donné, l'offre qui est relié à ce domaine sera supprimer aussi donc du coup je me demande si y'a un moyen plus sur ^pour éviter ce genre de probléme.
ma démarche est la suivante:
j'ai défini les tables en tant que INNO DB et j'ai défini dans la table offre , domaineId comme étant la clé étrangère pour pouvoir les relier.
Merci d'avance pour votre aide.
nassing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/06/2011, 15h22   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 008
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 11 008
Points : 18 279
Points : 18 279
Envoyer un message via MSN à CinePhil
Dans phpMyAdmin, affiche la table offre puis clique sur le lien "Gestion des relations". Su l'écran suivant, tu dois voir ta clé étrangère déjà définie puis ON DELETE puis une liste déroulante. Dans cette dernière, tu choisis CASCADE, ce qui aura pour effet d'ajouter l'instruction ON DELETE CASCADE à la définition de ta clé étrangère. Grâce à cette instruction, la suppression d'un domaine entraînera automatiquement la suppression des offres de ce domaine.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2011, 16h07   #3
Membre à l'essai
 
Femme
Développeur Web Junior
Inscription : novembre 2009
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Développeur Web Junior

Informations forums :
Inscription : novembre 2009
Messages : 124
Points : 22
Points : 22
Merci pour la réponse,
par contre ce que je veux c'est exactement le contraire, je veux éviter de supprimer un domaine qui est relié à une offre, par exemple en cas d'erreur de supression, donc je veux que quand l'utilisateur essaye de supprimer un domaine qui est relié à une offre, cette suppression ne va pas s'effectuer donc du cout j'afficherai un message disant "impossible de supprimer ce domaine car il est relié à une offre", donc j'ai pensé gérer ça avec les contraintes d'intégrités sous phpmyadmin.
nassing est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/06/2011, 16h15   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 008
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 11 008
Points : 18 279
Points : 18 279
Envoyer un message via MSN à CinePhil
Citation:
Envoyé par nassing Voir le message
je veux que quand l'utilisateur essaye de supprimer un domaine qui est relié à une offre, cette suppression ne va pas s'effectuer donc du cout j'afficherai un message disant "impossible de supprimer ce domaine car il est relié à une offre", donc j'ai pensé gérer ça avec les contraintes d'intégrités sous phpmyadmin.
Tu utilises alors ON DELETE RESTRICT et MySQL ne va rien supprimer et va déclencher une erreur que ton programme doit capter et traduire en clair pour l'utilisateur.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h15.


 
 
 
 
Partenaires

Hébergement Web