Bonjour,
je voudrais réaliser une contrainte sur les champs de ma table.
Je pense que je n'ai pas pigé quelque chose dans les cours et dans la doc.

Je souhaiterais faire en sorte qu'il n'existe qu'un seul "client_nom" et également un seul "client_login".
Voici ce que j'ai fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
CREATE TABLE CLIENT (
   client_id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
   client_login VARCHAR(30) NOT NULL,
   client_nom VARCHAR(30) NOT NULL,
   client_mail VARCHAR(40),
   client_passwd CHAR(40), -- mot de passe en SHA1
   client_date_creation TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
   PRIMARY KEY(client_id),
   UNIQUE(client_login, client_nom)
) TYPE=INNODB CHARACTER SET latin1 COLLATE latin1_swedish_ci;
Avec UNIQUE(client_login, client_nom), il semblerait que ce soit le couple logn/nom qui soit unique et non les deux.
Dois je séparer UNIQUE en deux comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
UNIQUE(client_login),
UNIQUE( client_nom)
.
Merci d'avance pour vos réponses.