{SQL Server} Creer une contrainte

Bonjour,
j'ai cree une base de donnees sql server 2008.
c'est pour un site de reservations de place de cinema;
il doit y avoir 3 films recommandes en page d'acceuil;
j'ai donc rajoute une colonne dans ma database qui contient des donnees de types boolean;
il doit y avoir que 3 films (et pas plus) dont la donnee est <true>!!
comment creer cette contrainte qui permettrait donc de ne pas avoir plus de 3 films recommandes?????

Merci beaucoup.
Configuration: Windows XP Internet Explorer 8.0

2 réponses

  1. mais comment l'ecrire?? le code exact!
    je ne connais pas trop sql server justement!!
    Quelqu'un pourrait m'aider?

    Merci
    1. Salut,

      je ne connais pas du tout comment fonctionne SQL server. D'après ce document http://www.commentcamarche.net/contents/sql/sqlcontr.php3, tu devrais pouvoir faire une contrainte sur ta colonne à l'aide de l'instruction CHECK qui controle que le nombre de champs dont la valeur pour cette colonne est à true est infèrieur à 3.

      quelque chose du genre :

      constraint ck_recommande
      check (recommande + SELECT COUNT(recommande) < = 3).

      Je ne sais pas si la syntaxe est exacte et si il est nécessaire de préciser le nom de table dans la requete Select count. A tester.

      Sinon, tu peux aussi ne pas mettre de contraintes sur la colonne, mais un trigger qui compte le nombre ligne dont la valeur est à vrai avant l'insertion et autorise ou non l'opération.

      Cdlt

      IC