PHP/MySQL Einfügen von Nullwerten
Benutzer stoßen häufig auf Schwierigkeiten beim Einfügen von Nullwerten in eine Datenbank, wenn der entsprechende Array-Wert ebenfalls Null ist. Dies geschieht, obwohl für das Feld Nullwerte zulässig sind. Um dieses Problem zu lösen, ist es wichtig, den Prozess des Einfügens von Nullwerten in MySQL zu verstehen.
In MySQL müssen Nullwerte während der Einfügezeit explizit angegeben werden, oder das Feld muss weggelassen werden. Bei Verwendung der MySQL-Erweiterung führt dies häufig dazu, dass eine zusätzliche Verzweigung erforderlich ist.
<code class="php">INSERT INTO table2 (f1, f2) VALUES ('String Value', NULL);</code>
Für Nicht-Null-Werte müssen jedoch einfache Anführungszeichen hinzugefügt werden:
<code class="php">INSERT INTO table2 (f1, f2) VALUES ('String Value', 'String Value');</code>
Diese Verzweigung kann vermieden werden, indem vorbereitete Anweisungen verwendet werden, die von der MySQL-Erweiterung bereitgestellt werden. Diese Anweisungen handhaben automatisch die Unterscheidung zwischen leeren Zeichenfolgen (string(0) "") und Nullwerten und stellen so sicher, dass Abfragen korrekt ausgeführt werden.
<code class="php">$stmt = $mysqli->prepare("INSERT INTO table2 (f1, f2) VALUES (?, ?)"); $stmt->bind_param('ss', $field1, $field2); $field1 = "String Value"; $field2 = null; $stmt->execute(); // ...</code>
Vorbereitete Anweisungen bieten mehrere Vorteile gegenüber der herkömmlichen MySQL-Erweiterung. Sie verhindern SQL-Injection-Angriffe, maskieren Felder automatisch und stellen sicher, dass alle Parameter gebunden sind. Durch die Nutzung vorbereiteter Anweisungen in der PHP/MySQL-Entwicklung können Entwickler die mit der Nullwertverarbeitung verbundenen Komplexitäten vermeiden und die Sicherheit und Effizienz ihrer Anwendungen verbessern.
Das obige ist der detaillierte Inhalt vonWie füge ich mit PHP Nullwerte in MySQL ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!