Vérifier qu'une valeur est positive [Résolu]

cs_magicraky 12 Messages postés mardi 21 juin 2005Date d'inscription 27 décembre 2012 Dernière intervention - 29 oct. 2011 à 04:46 - Dernière réponse : cs_magicraky 12 Messages postés mardi 21 juin 2005Date d'inscription 27 décembre 2012 Dernière intervention
- 29 oct. 2011 à 20:46
voici mon code sql pour créer une table et vérifier que la valeur est positive avant l'insertion et pourtant j'ai dejà pu voir une valeur négative dans le champ nombre_reserve par exemple.
	CREATE  TABLE `cafeteria`.`Articles` (
`idArticle` INT NOT NULL ,
`nom` VARCHAR(45) NOT NULL ,
`prix` FLOAT NOT NULL CHECK (`prix` >= 0),
`nombre_reserve` INT NOT NULL CHECK(`nombre_reserve` >=0),
`nombre_vendu` INT NOT NULL CHECK(`nombre_vendu` >=0),
`type` VARCHAR(45) NULL ,
`offert` INT NOT NULL CHECK (`offert` >= 0),
PRIMARY KEY (`idArticle`) );


Si quelqu'un pouvait m'aider et me dire pourquoi mysql ne balance pas d'erreur quand on essaie de rentrer une valeur négative. Merci d'avance.
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
cs_magicraky 12 Messages postés mardi 21 juin 2005Date d'inscription 27 décembre 2012 Dernière intervention - 29 oct. 2011 à 20:46
3
Merci
En fait je décrémente au fur et à mesure mon "nombre_reserve" quand au nombre_vendu il ne fait que croître. sinon je jette un coup d'oeil à sql ... http://www.w3schools.com/sql/sql_check.asp
j'ai ça pour oracle et ms access:
CREATE TABLE Persons
(
P_Id int NOT NULL CHECK (P_Id>0),
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
et ça pour mysql :
CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (P_Id>0)
)
Donc j'ai qu'à utiliser la syntaxe pour mysql
MERCI           

Merci cs_magicraky 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 95 internautes ce mois-ci

Commenter la réponse de cs_magicraky
Utilisateur anonyme - 29 oct. 2011 à 17:01
0
Merci
Salut,

Est-ce que c'est détecté pour nombre_vendu décrit de la même manière ?

Mais je trouve étrange qu'on demande (dans les deux cas) que ce soit NOT NULL et en même temps >= 0.

Cordialement

...\ Dan /...
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.