Je souhaite ajouter un type de contrainte de logique métier à une table, mais je ne sais pas comment/où.Comment dois-je faire cela (logique métier) dans Sql Server? Une contrainte?
J'ai une table avec les champs suivants.
- ID ENTIER IDENTITÉ
- HubId ENTIER
- CategoryId ENTIER
- BIT IsFeatured
- Foo NVARCHAR (200)
etc.
donc ce que je veux est que vous ne pouvez avoir qu'un thingy en vedette, par hubId + categoryId.
eg.
1, 1, 1, 1, 'blah' -- Ok.
2, 1, 2, 1, 'more blah' -- Also Ok
3, 1, 1, 1, 'aaa' -- constraint error
4, 1, 1, 0, 'asdasdad' -- Ok.
5, 1, 1, 0, 'bbbb' -- Ok.
etc.
de sorte que la troisième rangée à insérer échouerait parce que ce moyeu et catégorie ont déjà thingy en vedette.
Est-ce possible?
duplicata possible de http: // stackoverflow.com/questions/2587151/combining-the-unique-and-check-constraints – gbn