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 :
Nom : cardinalite.png
Affichages : 2401
Taille : 12,1 Ko
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 ?