{SQL Server} Creer une contrainte

mickeyjuve Messages postés 140 Statut Membre -  
mickeyjuve Messages postés 140 Statut Membre -
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. incaout Messages postés 347 Date d'inscription   Statut Membre Dernière intervention   74
     
    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
    0
  2. mickeyjuve Messages postés 140 Statut Membre 17
     
    mais comment l'ecrire?? le code exact!
    je ne connais pas trop sql server justement!!
    Quelqu'un pourrait m'aider?

    Merci
    0