Leicht OT: Insert Bug bei MySQL

Christian Ordig chr.ordig at gmx.net
Mon Mai 24 12:43:06 CEST 2004


On Mon, May 24, 2004 at 11:21:03AM +0200, Johannes Vieweg wrote:
> Wenn ich in MySQL eine Tabelle mit einer Spalte INT(8) definiere,
> so habe ich laut Handbuch eine Integer Spalte erstellt, es können
> aber nur 8 Ziffern eingefügt werden (8 = Anzeigebereich).
> Ich habe das mal ausgetestet, aber merkwürdigerweise scheint sich
> die DB darum nicht zu kümmern. Ich kann bis zum Ende des Zahlen-
> bereiches Zahlen einfügen, ohne das sich die DB darüber mokiert.
> Extrembeispiel: INT(1) erlaubt 123456789 als Wert. 
> Ist das ein Bug beim Konsolenclient? Oder ein Denkfehler?
> 
> Die Frontends (mysqlcc usw.) blocken das ab, ich vermute hier
> eine interne Logik. 
> 
> Der Fehler tritt nur bei INT's auf.
irgendwie scheint die Bereichspruefung von Datentypen in MySQL nicht 
wirklich zu funktionieren. Bei einem Feld vom Typ DATETIME kann ich 
folgenden Quatsch einfuegen, ohne dass ich vom Datenbank-Backend 
irgendeine Fehlermeldung oder Warnung bekomme:
2004-13-14 25:00:78

Es wird stillschweigend zu 0000-00-00 00:00:00 !

Wozu haben die Leute dann ueberhaupt Datentypen in dieses 
Karteikarten-System eingebaut, wenn ich sie im Frontend extra pruefen 
muss?

Gruss.

-- 
Christian Ordig
Germany

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : nicht verfügbar
Dateityp    : application/pgp-signature
Dateigröße  : 187 bytes
Beschreibung: nicht verfügbar
URL         : http://www.tlug.de/pipermail/tlug_allgemein/attachments/20040524/dab6e05a/attachment.pgp