Bonsoir ! C'est encore moi --'
Toujours sur ma BDD type AlloCiné, je cherche à mettre une valeur max pour un INT pour la note d'un film ... En clair, je voudrais que l'on puisse mettre 5 ou 10 comme valeur max ... Est-ce possible ?
Merci d'avance![]()
Bonsoir ! C'est encore moi --'
Toujours sur ma BDD type AlloCiné, je cherche à mettre une valeur max pour un INT pour la note d'un film ... En clair, je voudrais que l'on puisse mettre 5 ou 10 comme valeur max ... Est-ce possible ?
Merci d'avance![]()
Ca se fait soit côté applicatif, soit au moment de l'insertion avec un trigger.
ça c'est débile, il faudrait le faire dans toutes les applications actuelles et futures !!!!!
ça c'est contre performant.... !soit au moment de l'insertion avec un trigger.
Mieux vaudrait faire une contrainte CHECK ! Malheureusement, MySQmerde ne les acceptent toujours pas !
Extrait de la doc :
"The CHECK clause is parsed but ignored by all storage engines"
Bref, prenez un vrai SGBDR, pas un ersatz ! A me lire : http://blog.developpez.com/sqlpro/p9...oudre_aux_yeux
A +
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Bonsoir,
Si vous souhaitez que la note des films prenne une valeur maximale, vous pouvez la définir avec la clause DEFAULT. Il faudra lancer une requête ALTER TABLE pour appliquer cette contrainte. Par exemple, si les notes vont de 0 à 10, vous pouvez saisir :
TINYINT consomme 1 octet tandis que INT en consomme 4. Vous économiserez ainsi 3 octets pour chaque ligne dans votre table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part ALTER TABLE Film MODIFY Note TINYINT NOT NULL DEFAULT 10;
Bonsoir
Je suis étonné de la réponse de la réponse de MacFly58. Je ne vois pas en quoi mettre une valeur par défaut de "10" empêcherait de saisir des valeurs supérieures. JE suis preneur d'explications.
Pierre
Partager