Dezimaldaten in PDO binden
Diese Frage untersucht das Problem der Bindung von Werten an Dezimal- oder Float-Datenbankfelder mithilfe von PHP-Datenobjekten (PDO). . Der Benutzer hatte Schwierigkeiten beim Aktualisieren eines Dezimalfelds mit dem Parametertyp PDO::PARAM_INT.
PDO::PARAM für Dezimaldaten
Leider gibt es kein dediziertes PDO: :PARAM-Typ speziell für Dezimal- oder Float-Daten. Dies bedeutet, dass der erste Versuch des Benutzers, PDO::PARAM_INT für ein Dezimalfeld zu verwenden, nicht funktioniert.
Problemumgehung: Verwendung von PDO::PARAM_STR
Gemäß der Antwort Vorausgesetzt, die Problemumgehung besteht darin, PDO::PARAM_STR für Dezimal- oder Float-Daten zu verwenden. Dies liegt daran, dass PDO beim Binden an dezimale Datenbankfelder automatisch Zeichenfolgenwerte in Dezimalzahlen umwandelt.
Beispielcode
Der folgende Codeausschnitt zeigt die korrekte Methode zum Binden eines Dezimalwerts using PDO::PARAM_STR:
$update_decval->bindParam(':decval', $decval, PDO::PARAM_STR);
Durch die Verwendung von PDO::PARAM_STR wird die Die PDO-Bibliothek verarbeitet die Konvertierung in einen Dezimaltyp ordnungsgemäß, sodass der Benutzer das Dezimalfeld in der Datenbank erfolgreich aktualisieren kann.
Das obige ist der detaillierte Inhalt vonWie binde ich Dezimaldaten in PDO mit PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!