Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich aus PHP NULL-Werte ordnungsgemäß in MySQL einfügen?

Wie kann ich aus PHP NULL-Werte ordnungsgemäß in MySQL einfügen?

Linda Hamilton
Linda HamiltonOriginal
2024-11-28 20:43:12762Durchsuche

How Can I Properly Insert NULL Values into MySQL from PHP?

NULL-Werte von PHP an MySQL übergeben

Beim Einfügen von Daten in eine MySQL-Datenbank mit PHP kann es erforderlich sein, explizit einen NULL-Wert zu übergeben Wert für optionale Felder. Wenn stattdessen eine leere Zeichenfolge übergeben wird, interpretiert MySQL diese als nicht leeren Wert.

Einfügen von NULL mit vorbereiteten Anweisungen

Die empfohlene Methode zum Einfügen von NULL-Werten ist durch vorbereitete Stellungnahmen. Vorbereitete Anweisungen verwenden Platzhalter (?), um Werte darzustellen, die später an Variablen gebunden werden. Wenn eine Variable einen PHP-NULL-Wert enthält, wird sie bei der Ausführung automatisch einem MySQL-NULL-Wert zugeordnet.

Beispiel:

$query = "INSERT INTO data (notes, id, filesUploaded, lat, lng, intLat, intLng)
          VALUES (?,?,?,?,?,?)";
$data = [$notes, $id, $imageUploaded, $lat, $long, $intLat, $intLng];
$conn->prepare($query)->execute($data);

Umgang mit leeren Zeichenfolgen als NULL

Wenn Sie leere Zeichenfolgen vor dem Einfügen in NULL-Werte konvertieren möchten, können Sie Folgendes verwenden Code:

$intLat = ($intLat === '') ? null : $intLat;

Dies weist $intLat einen NULL-Wert zu, wenn sein Wert eine leere Zeichenfolge ist, andernfalls behält es seinen ursprünglichen Wert.

Fazit

Beim Einfügen von Daten aus PHP in MySQL ist es wichtig, optionale Felder korrekt zu verarbeiten, um Probleme mit der Datenintegrität zu vermeiden. Vorbereitete Anweisungen bieten eine sichere und effiziente Möglichkeit, NULL-Werte einzufügen, während der oben genannte Code es Ihnen ermöglicht, leere Zeichenfolgen bei Bedarf in NULL-Werte umzuwandeln.

Das obige ist der detaillierte Inhalt vonWie kann ich aus PHP NULL-Werte ordnungsgemäß in MySQL einfügen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn