J'ai déjà posé cette question mais les réponses n'étaient pas ce que je recherchais.Enregistrement unique dans Asp.Net SQL
J'ai créé une table dans Asp.net sans utiliser de code. Il contient deux colonnes.
YourUserID et FriendUserId
C'est une relation plusieurs à plusieurs.
Heres ce que je veux:
Il peut y avoir plusieurs enregistrements avec votre nom comme ID utilisateur, il peut aussi y avoir plusieurs enregistrements avec FriendUserId étant la même ... mais il ne peut y avoir plusieurs enregistrements à la fois être le même . Par exemple:
Dave: Greg
Dave: Chris
Greg: Chris
Chris: Greg
est bon
Dave: Greg
Dave: Greg
n'est pas bon. J'ai fait un clic droit sur la table et j'ai choisi les index/clés.
J'ai ensuite mis les deux colonnes dans la section des colonnes et j'ai choisi de faire l'unique. Je pensais que cela les rendrait uniques dans leur ensemble, mais individuellement non uniques.
Si vous allez à l'ensemble de données, il affiche les clés à côté des deux colonnes et indique qu'il y a une contrainte avec les deux colonnes en cours de vérification.
Est-il possible de s'assurer que vous n'insérez pas une copie dupliquée d'un enregistrement dans la table sans que les colonnes individuelles soient uniques?
J'ai essayé de le contrôler avec mon instruction d'insertion SQL, mais cela n'a pas fonctionné. C'est ce que j'ai essayé. INSEREZ DANS [FriendRequests] ([UserId], [FriendUserId]) VALUES ('"+ UserId +"', '"+ PossibleFriend +"') O WH NON EXIST (SELECT [ID utilisateur], [FriendUserId] FROM [FriendRequests]
Cela n'a pas fonctionné pour une raison quelconque. Nous vous remercions de votre aide!
Je ne sais pas exactement quel est le problème. Il semble que vous ayez créé une clé composite. Avez-vous une erreur? Êtes-vous capable d'insérer des lignes en double? –
Si vous avez déjà posé cette question, essayez de clarifier votre question initiale à mesure que les gens la demandent plutôt que d'en créer une nouvelle pour encombrer le tableau. http://stackoverflow.com/questions/707767/sql-unique-record-not-column –