Announcement

Collapse
No announcement yet.

ERROR 1366: Incorrect decimal value: '' for column '' at row -1

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • ERROR 1366: Incorrect decimal value: '' for column '' at row -1

    Hallo,

    Ich möchte aus Tabelle b eine Kolonne x an a anrbringen, wobei die Kolonne b.x eine Zahl ist mit Datentyp CHAR. Ich bin folgendermassen vorgegangen:
    Code:
    ALTER TABLE a ADD x DOUBLE DEFAULT NULL;
    UPDATE a
    INNER JOIN a.id = b.id
    SET a.x = CAST(b.x AS DECIMAL(6,3))
    ;
    Folgende Fehlermeldung erscheint:
    ERROR 1366: Incorrect decimal value: '' for column '' at row -1
    Bin um jeden Hinweis dankbar.

    giordano

  • #2
    Hallo,

    du solltest für dein Update in einer Where-Klausel Leere Zeichenketten ausschliessen, da diese nicht zu einem Decimal gecastet werden können.

    [highlight=sql]
    ...
    where b.x != ''
    [/highlight]

    Gruß Falk
    Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

    Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

    Comment


    • #3
      Besten Dank,
      Es läuft durch ohne Fehlermeldung, jedoch wird es nicht "updated". x bleibt NULL. Werde weiter schauen und mich melden.
      giordano

      Comment


      • #4
        ausserdem würde ich noch prüfen ob denn wirklich überall nur zahlen drin stehen

        Comment


        • #5
          Außerdem würde ich noch prüfen, wo überhaupt Deine Tabelle B herkommt.
          Gruß, defo

          Comment


          • #6
            Besten Dank für die Hilfe. Es war tatsälich nur
            Code:
            WHERE b.x <> ''
            Ich hatte nicht bemerkt, dass aktualisiert wurde.

            giordano

            Comment

            Working...
            X