Maison >base de données >tutoriel mysql >Comment définir la valeur de la ligne pour qu'elle soit unique dans MySQL ?

Comment définir la valeur de la ligne pour qu'elle soit unique dans MySQL ?

青灯夜游
青灯夜游original
2020-10-22 09:39:423147parcourir

mysql peut définir la valeur de la ligne pour qu'elle soit unique en ajoutant une contrainte unique à la ligne (champ). Le format de syntaxe est "CREATE TABLE nom de la table (type de données du nom de champ UNIQUE);" name ADD CONSTRAINT contrainte unique Name UNIQUE (nom de la colonne);".

Comment définir la valeur de la ligne pour qu'elle soit unique dans MySQL ?

(Tutoriel recommandé : Tutoriel vidéo MySQL)

Définition de l'unicité de la base de données MySQL

Les champs qui définissent la clé primaire dans la conception de la base de données sont non répétitifs et uniques. S'il existe d'autres champs qui doivent également être uniques, comment doivent-ils être définis ? Par exemple, une table qui stocke les informations utilisateur doit garantir que le numéro de téléphone mobile de chaque enregistrement est différent. À ce stade, vous devez définir l’unicité de ce champ.
Après avoir paramétré l'unicité du champ, il est garanti au niveau de la base de données que le champ n'aura pas la même valeur. Parlons de la façon de définir l'unicité :

index des opérations de ligne de commande mysql

1 Ajoutez

CREATE TABLE `member` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(18) NOT NULL ,
`phone` varchar(18) NOT NULL unique,
PRIMARY KEY (`id`)  
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

lors de la création de la table 2. Modifiez

alter table member add unique(phone);
Utilisez l'outil Navicat pour ajouter un index

Il est plus pratique d'utiliser navicat pour faire fonctionner la base de données mysql Il est recommandé à tout le monde d'utiliser cette méthode

Lors de la conception de la table : sélectionnez l'index comme. Comme indiqué sur la figure, le premier élément « nom », vous pouvez le choisir vous-même. Un nom significatif fera l'affaire. Le deuxième élément est le champ dont vous souhaitez définir l'unicité, puis sélectionnez unique comme type d'index.

Sélectionnez le nom de la table à modifier, faites un clic droit pour sélectionner la table de paramétrage

Comment définir la valeur de la ligne pour quelle soit unique dans MySQL ?

Problèmes fréquemment rencontrés

Comment définir la valeur de la ligne pour quelle soit unique dans MySQL ? Si l'unicité est ajoutée plus tard (une fois le tableau conçu et qu'il y a déjà des données dans le tableau)
Il peut y avoir des situations où certaines données du tableau ne satisfont pas à l'unicité, par exemple exemple : vous souhaitez définir l'unicité du téléphone de terrain, mais il y a actuellement deux téléphones de données dans le tableau, qui ont tous deux le même numéro de téléphone mobile. Il s'agit d'une erreur lors de la définition de l'unicité.
Comme le montre l'image ci-dessus (cette situation se produira également sous une opération en ligne de commande, mais sous forme de texte)
À ce stade, les données en double doivent être supprimées, puis l'unicité peut être définie.

La combinaison de deux ou plusieurs champs forme un index unique

Exemple : Un utilisateur a enregistré son nom et son numéro de téléphone portable

Ici, seul chaque numéro de téléphone mobile peut correspondre. un seul nom, c'est-à-dire que la combinaison du nom et du téléphone ne peut pas être répétée, c'est-à-dire qu'il ne peut pas y avoir deux enregistrements portant le même nom et le même téléphone.
Comment le paramétrer dans mysql ? Ici nous donnons uniquement la méthode dans navicat : comme le montre la figure, il vous suffit de sélectionner deux champs !

Comment définir la valeur de la ligne pour quelle soit unique dans MySQL ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn