Wertebereich einer Tabelle einschränken
Hallo zusammen,
ich möchte eine Tabelle Artikel anlegen und für eine Spalte Preis den gültigen Wertebereich einschränken. Wird ein Wert größer 9 eingegeben, soll die Eingabe von der DB zurückgewiesen werden.
DROP TABLE IF EXISTS `mydb`.`Artikel` ;
CREATE TABLE IF NOT EXISTS `mydb`.`Artikel` (
`idArtikel` INT NOT NULL AUTO_INCREMENT,
`Name` VARCHAR(10) NOT NULL,
`Beschreibung` VARCHAR(45) NULL,
`Hersteller` VARCHAR(45) NULL,
`Herstellungsdatum` DATE NOT NULL,
`Preis` DOUBLE NOT NULL CHECK(Preis<10),
PRIMARY KEY (`idArtikel`))
Wenn ich folgende Inserts an die DB schicke, werden die Datensätze trotzdem angelegt.
INSERT INTO `mydb`.`Artikel` ( `Name`, `Beschreibung`, `Hersteller`, `Herstellungsdatum`, `Preis`) VALUES ( "Q", "Q", "Q", "2015-09-09", 3)
INSERT INTO `mydb`.`Artikel` ( `Name`, `Beschreibung`, `Hersteller`, `Herstellungsdatum`, `Preis`) VALUES ( "Q", "Q", "Q", "2015-09-09", 13)
Hier die Datensätze in meiner DB
1 Q Q Q 2015-09-09 3
2 Q Q Q 2015-09-09 13
Was mache ich falsch?!