MySQL Forums
Forum List  »  German

CHECK wird ignoriert?
Posted by: Ulrich Winterberg
Date: March 29, 2007 05:50AM

Hallo zusammen,

ich habe eine Frage bezüglich der CHECK Anweisung bei Create / Alter Table.

Wenn ich versuche das Einfügen von Werten in eine Integer Spalte auf einen bestimmten Wertebereich zu beschränken, um fehlerhafte Eingaben zu verhindern, funktioniert dies nicht.

Die Anweisung lautet folgendermaßen:

Create Table `test`.`tblTest`(
`LNr`Integer Unsigned Not Null Auto_Increment,
`TestNr`Integer Unsigned Not Null Default 0,
Check (`test.tbltest.TestNr`Between 0 And 4095),
Primary Key (`LNr`)
)
Engine = InnoDB


Die Tabelle tbltest wird erstellt, Insert Anweisungen mit Integer-Werten für TestNr funktionieren auch.

Aber leider werden auch Werte > 4095 zugelassen.

Im Referenzhandbuch steht, daß die Check-Klausel von allen Speicher-Engines erkannt, aber Ignoriert wird (refman-5.1-de Kapitel 13.1.5 Seite 728).

Heißt das, daß diese Überprüfung überhaupt nicht durchgeführt werden kann?

habe ich was falsch gemacht oder gibt es einen Workaround?

Danke für eure Hilfe

MfG

Ulrich

Options: ReplyQuote


Subject
Views
Written By
Posted
CHECK wird ignoriert?
4527
March 29, 2007 05:50AM
2434
April 03, 2007 03:20PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.