Valeur unique pour modéliser NULL sans NULL
Bonjour,
J'ai un petit souci de conception et un avis à vous demander.
J'ai une table T1 qui contient divers champs dont l'un est "sens_id" et qui contient l'id d'une autre table T2 (clé étrangère)
Cette table T2 contient un champ "sens" qui peut prendre les valeurs droite, gauche, haut, bas et rien (pas de sens) !
C'est ce "rien" qui me pose problème car le sens_id de T1 DOIT contenir une valeur et je ne veux pas mettre de NULL pour modéliser le RIEN car je devrais mettre le champ sens à NULL.
Et cela permettrait la possibilité d'insérer plusieurs NULL dans la table T2 ce que je ne veux pas !
Est-ce que je dois à la place de NULL insérer une chaine vide comme valeur pour "rien" de la table T2 et la traiter ensuite côté script ?
Ou bien une valeur texte "NULL" et la traiter côté script également ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| CREATE TABLE `T1` (
`id` int(11) NOT NULL AUTO_INCREMENT,
...
...
...
`sens_id` int(11) NOT NULL,
PRIMARY KEY (`id`),
CONSTRAINT FOREIGN KEY (sens_id) REFERENCES T2(id)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8 ;
CREATE TABLE `T2` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`SENS` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=UTF8 ; |
Merci de vos avis.