使用準備好的語句在PHP/MySQL 中插入NULL 值
您的問題是由於嘗試使用mysql_query 將NULL 值插入SQLSQL資料庫而產生的功能。若要成功插入 NULL 值,您需要在 INSERT 語句中明確指定它們或省略該欄位。
但是,這種方法需要額外的分支來處理 NULL 和非 NULL 值。更優雅的解決方案是使用 prepared statements 和 mysqli 擴充。
Prepared statements 自動區分 string(0) 和 NULL 值。它們還為您轉義字段,確保資料完整性。以下是使用準備好的語句的範例:
<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>
透過使用準備好的語句,您可以輕鬆插入 NULL 值,而無需任何分支或附加程式碼。此外,準備好的語句可以防止 SQL 注入攻擊並提高效能。強烈建議使用 mysqli 及其準備好的語句,以提高安全性、效能和易於開發性。
以上是如何在 PHP 中使用準備好的語句正確地將 NULL 值插入 MySQL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!