Dit is een voorbeeld van het gebruik van voorbereide uitspraken scheelt je echt wat moeite.
Om in MySQL een null-waarde in te voegen, moet u deze specificeren bij INSERT
time of laat het veld weg dat extra vertakking vereist:
INSERT INTO table2 (f1, f2)
VALUES ('String Value', NULL);
Als u echter een waarde in dat veld wilt invoegen, moet u nu uw code vertakken om de enkele aanhalingstekens toe te voegen:
INSERT INTO table2 (f1, f2)
VALUES ('String Value', 'String Value');
Voorbereide verklaringen doen dat automatisch voor u. Ze kennen het verschil tussen string(0) ""
en null
en schrijf uw vraag op de juiste manier:
$stmt = $mysqli->prepare("INSERT INTO table2 (f1, f2) VALUES (?, ?)");
$stmt->bind_param('ss', $field1, $field2);
$field1 = "String Value";
$field2 = null;
$stmt->execute();
Het ontsnapt aan uw velden voor u, zorgt ervoor dat u niet vergeet een parameter te binden. Er is geen reden om bij de mysql
te blijven verlenging. Gebruik mysqli
en het zijn voorbereide verklaringen
in plaats van. Je bespaart jezelf een wereld van pijn.