SQL Insert Problem -> Falscher Wert wird eingetragen

rollerueckwaerts

Erfahrenes Mitglied
Hallo,
ich habe ein für meine Verhältnisse eher ungewöhnliches Problem.

Ich möchte in eine Spalte den Wert 100002137171664 per PHPMyAdmin eintragen.
Die Spalte ist vom Datentyp Int(100)
Ergebnis nach dem Eintragen: 2147483647

Bekomme auch die Warnung: Out of range value adjusted for column
aber meiner Meinung nach überschreite ich den Range doch garnicht ?!

Was mache ich falsch ?
 
Hi

dein tatsächlicher, Wert ist (2^31)-1, mit anderen Worten:
Der Maximalwert für ein normales int (ja, auch das hat Beschränkungen).

Es geht zwar noch größer, aber auf 100 (Dezimalzahlen-)Stellen wirst du nicht kommen.

Musst du mit der Zahl auch herumrechnen etc.?
Wenn nein, einfach als Text abspeichern.
Wenn ja...Je nach Fall andere Lösungen möglich.

Gruß
 
http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html#id636300

This optional display width may be used by applications to display integer values having a width less than the width specified for the column by left-padding them with spaces.

[...]

The display width does not constrain the range of values that can be stored in the column.

INT ist INT. Willst du was größeres, brauchst du BIGINT. Da passt dann auch deine 100002137171664 rein.
 

Neue Beiträge

Zurück