tomiondrums: MySQL und der typ DECIMAL

Hi!
Ich hab hier grad ein ziemliches Problem und um es vereinfachend darzustellen, hab ich mal folgendes gebaut (man achte dabei auf die Grenzen, die ich für den Decimal vergeben hab und den eingefügten Wert 1.5):

create table dtest( id int auto_increment, dval decimal( 3, 3 ), primary key( id ) );

insert into dtest values( 0, "1.5" );
Query OK, 1 row affected, 1 warning (0.00 sec)

Und die warning ist:
"Out of range value adjusted for column 'dval' at row 1"

Hab ich hier was falsch verstanden, oder ist das ein Bug in MySQL? Weiß jemand zufällig, was ich anstellen muß, um das zu beheben?

Vielen Dank
Mit freundlichem Gruß
 tom

  1. Hai,

    Und die warning ist:
    "Out of range value adjusted for column 'dval' at row 1"

    schon okay,
    Du hast ein Feld mit drei Stellen erzeugt, wovon drei Nachkommastellen sind.
    Und dann versuchst Du 1.5 zu inserten ... ;-)

    Den Typ Decimal soll man sich wie einen String vorstellen, steht im Handbuch.
    Daraus kannst Du Dir den Rest ableiten, hoffe ich.

    Gruss Norbert

    1. Hai,

      Und die warning ist:
      "Out of range value adjusted for column 'dval' at row 1"
      schon okay,
      Du hast ein Feld mit drei Stellen erzeugt, wovon drei Nachkommastellen sind.
      Und dann versuchst Du 1.5 zu inserten ... ;-)

      Den Typ Decimal soll man sich wie einen String vorstellen, steht im Handbuch.
      Daraus kannst Du Dir den Rest ableiten, hoffe ich.

      Gruss Norbert

      Aaaaah - ich glaub, jetzt versteh ich's der erste param bei decimal ist also die Gesamtgröße und nicht, wie ich fälschlich angenommen hab, die Zahl der Stellen vor dem Komma...

      Vielen Dank!