PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 01-02-2011 13:48:57

soaf
Membre
Inscription : 01-02-2011
Messages : 2
Site Web

Trigger et synchronisation de champd

Bonjour,
Voici mon probleme : J'ai 2 tables
La 1ere est tres simple : id - Intitule
(cette table sera amenée à grossir avec le projet)
La 2e contient un champs qui doit etre un SET ou un ENUM de tous les intitulés de la 1ere table.

Comment puis je faire pour synchroniser les valeurs du SET avec les intitulés de la 1ere table ?


merci

Dernière modification par soaf (01-02-2011 13:49:21)


Your mom owes me money...

Hors ligne

#2 01-02-2011 14:03:55

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Trigger et synchronisation de champd

Saluton,
Déjà la notion de SET ou d'ENUM ne va pas convenir, car ces descriptions font partie du schéma de la table et les modifier par un ALTER TABLE créerait, entre autres, des problèmes par rapport aux valeurs déjà saisies.
Donc la solution du trigger peut convenir pour émuler une sorte de contrainte CHECK BEFORE INSERT, mais la question dont je n'arrive pas à me défaire c'est :
Quid des valeurs anciennes en cas de suppression dans la table mère ?
Cette colonne est-elle déclarée comme FOREIGN KEY avec une clause ON DELETE ?


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 01-02-2011 14:06:21

soaf
Membre
Inscription : 01-02-2011
Messages : 2
Site Web

Re : Trigger et synchronisation de champd

Maljuna Kris a écrit :

Saluton,
Déjà la notion de SET ou d'ENUM ne va pas convenir, car ces descriptions font partie du schéma de la table et les modifier par un ALTER TABLE créerait, entre autres, des problèmes par rapport aux valeurs déjà saisies.
Donc la solution du trigger peut convenir pour émuler une sorte de contrainte CHECK BEFORE INSERT, mais la question dont je n'arrive pas à me défaire c'est :
Quid des valeurs anciennes en cas de suppression dans la table mère ?
Cette colonne est-elle déclarée comme FOREIGN KEY avec une clause ON DELETE ?

La table d'intitulés va grossir et non pas "maigrir", (c'est une liste de mots clefs) donc je ne pense pas que ca posera un probleme en cas d'ALTER TABLE.


Your mom owes me money...

Hors ligne

#4 01-02-2011 19:39:30

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Trigger et synchronisation de champd

Je te suggère de ne permettre la saisie des mots-clefs que : soit dans un liste de choix (<select><option>...) construite par requête sur la table des mots-clefs, soit avec une assistance à la saisie AJAX, dont tu trouveras des exemples de code un peu partout sur le web.
Rien ne t'empêche d'ajouter un trigger dans le SGBDR, ça fera ceinture et bretelles.


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

Pied de page des forums