Bonjour,
je me demande s'il est important de choisir entre ces 2 cardinalités au niveau du MCD, sachant que si je compare le SQL généré dans les 2 cas par Looping, il est identique...Du coup, quel intérêt ?
exemple de MCD :
En gros, c'est simple : un utilisateur soumet des tickets ; j'ai choisi 1,N et non 0,N car s'il soumet 0 ticket alors il n'existe pas. Ai-je bien fait ?
De toute façon, SQL généré avec 0,N :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 CREATE TABLE US_user( US_ident INT UNSIGNED AUTO_INCREMENT, US_firstname VARCHAR(50), US_lastname VARCHAR(50), PRIMARY KEY(US_ident) ); CREATE TABLE TI_ticket( TI_ident INT UNSIGNED AUTO_INCREMENT, TI_num_ticket BIGINT NOT NULL, US_ident_SBM INT UNSIGNED NOT NULL, PRIMARY KEY(TI_ident), UNIQUE(TI_num_ticket), FOREIGN KEY(US_ident_SBM) REFERENCES US_user(US_ident) );
SQL généré avec 1,N :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 CREATE TABLE US_user( US_ident INT UNSIGNED AUTO_INCREMENT, US_firstname VARCHAR(50), US_lastname VARCHAR(50), PRIMARY KEY(US_ident) ); CREATE TABLE TI_ticket( TI_ident INT UNSIGNED AUTO_INCREMENT, TI_num_ticket BIGINT NOT NULL, US_ident_SBM INT UNSIGNED NOT NULL, PRIMARY KEY(TI_ident), UNIQUE(TI_num_ticket), FOREIGN KEY(US_ident_SBM) REFERENCES US_user(US_ident) );
Ca me semble identique, donc aucune importance...Où est-ce que je me trompe ?
Partager