Est-ce que l'auto-référencement de table est autorisé dans MySQL ?
Exemple : j'ai une table contenant des unités dans mon projet.
Je désire que cette table contiennent ses propres valeurs de conversion vers l'unité standard d'un type donné:
Par exemple: la ligne
kg - kilogramme - poids - 2 - 1000.0 - g
fait donc référence à la ligne
g - gramme - poids - 2 - 1.0 - g
(qui est l'unité standard du poids).
Donc, est-ce que cette table est correcte et envisageable ?
Mais qu'en est-il de la 1ère ligne qui sera créée ? Puisqu'aucune instance n'existe encore ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TABLE Unite ( unite VARCHAR NOT NULL AUTO_INCREMENT, description VARCHAR NULL, type_2 ENUM NULL DEFAULT distance, surface, volume, poids, autre, decimales INTEGER UNSIGNED NULL, facteur_conversion FLOAT NULL, unite_conversion VARCHAR NOT NULL, PRIMARY KEY(unite), FOREIGN KEY(unite_conversion) REFERENCES Unite(unite) ON DELETE NO ACTION ON UPDATE NO ACTION );
Peut-être dois-je enlever le NOT NULL du champs unite_conversion ?
Partager