Beim Umgang mit Datenbankfeldern bestimmter Datentypen, wie z. B. Dezimalzahl oder Gleitkommazahl, ist es wichtig, die entsprechenden PDO-Parameter zu verwenden, um dies sicherzustellen ordnungsgemäße Datenbindung.
Wie Sie bereits festgestellt haben, kann die Aktualisierung eines Dezimalfelds mithilfe von PDO problematisch sein. Die drei Ansätze, die Sie ausprobiert haben:
$update_decval->bindParam(':decval', $decval, PDO::PARAM_STR); $update_decval->bindParam(':decval', $decval, PDO::PARAM_INT); $update_decval->bindParam(':decval', $decval);
sind alle falsch, da sie nicht den richtigen PDO-Parameter für ein Dezimalfeld angeben.
Leider gibt es keine spezielle PDO::PARAM-Konstante, die speziell für Dezimal- oder Float-Datentypen entwickelt wurde. Sie müssen stattdessen PDO::PARAM_STR verwenden.
$update_decval->bindParam(':decval', $decval, PDO::PARAM_STR);
Durch Festlegen des Parameters auf eine Zeichenfolge konvertiert PDO automatisch den bereitgestellten Wert in den entsprechenden Dezimaltyp basierend auf der Datenbankfelddefinition.
Das obige ist der detaillierte Inhalt vonWie binde ich dezimale Datentypen mit PDO-Parametern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!