Rumah > Artikel > pangkalan data > Bagaimanakah Saya Boleh Menyimpan Nilai NULL Benar dalam Penyata Disediakan MySQLi?
Menyimpan Nilai NULL Benar dalam Penyata Disediakan MySQLi
Dalam pernyataan yang disediakan dalam MySQLi, tingkah laku lalai untuk nilai NULL adalah untuk menukarnya kepada rentetan kosong ('') dalam kes rentetan atau 0 dalam kes integer. Walau bagaimanapun, jika anda memilih untuk mengekalkan nilai NULL, terdapat pendekatan khusus yang boleh anda ambil.
Menggunakan Pengendali Selamat NULL MySQL
Untuk menyimpan NULL sebenar dalam pernyataan MySQLi yang disediakan, anda mesti menggunakan pengendali selamat MySQL NULL:
<=>
Operator ini memastikan bahawa lajur dibandingkan untuk kesamaan atau bukan kesamaan kepada NULL. Contohnya:
$price = NULL; // Note: Using php NULL without quotes
$stmt = $mysqli->prepare("SELECT id FROM product WHERE price <=> ?"); // Selects products with NULL prices
$stmt->bind_param($price);
Dalam contoh ini, pertanyaan akan mendapatkan semula produk dengan lajur harga adalah NULL. Tanpa pengendali selamat NULL, pertanyaan tidak akan mengembalikan hasil, kerana NULL tidak sama dengan rentetan kosong atau 0.
Contoh
Kod PHP berikut menunjukkan cara menggunakan pengendali selamat NULL dalam pernyataan yang disediakan:
$firstName = NULL;
$lastName = "Doe";
$stmt = $mysqli->prepare("UPDATE users SET first_name <=> ?, last_name = ?");
$stmt->bind_param("ss", $firstName, $lastName);
$stmt->execute();
Pertanyaan ini akan mengemas kini pengguna dengan nama akhir yang ditentukan dan mengekalkan nilai NULL untuk nama pertama.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan Nilai NULL Benar dalam Penyata Disediakan MySQLi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!