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

Messages postés
12
Date d'inscription
mardi 21 juin 2005
Statut
Membre
Dernière intervention
27 décembre 2012
- - Dernière réponse : cs_magicraky
Messages postés
12
Date d'inscription
mardi 21 juin 2005
Statut
Membre
Dernière intervention
27 décembre 2012
- 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
Messages postés
12
Date d'inscription
mardi 21 juin 2005
Statut
Membre
Dernière intervention
27 décembre 2012
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           

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 144 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_magicraky
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