sql >> Database >  >> RDS >> Mysql

Is de null-waarde van PHP niet gelijk aan de null-waarde van MySQL?

Dat komt omdat PHP null wordt geconverteerd naar de lege tekenreeks "" wanneer u de querytekenreeks maakt.

$variable = null;
$insert = "insert into mytable set mycolumn = $variable" ;
echo $insert;

Zal produceren:

insert into mytable set mycolumn = 

Om uw vraag op te lossen, moet u controleren of de PHP-variabele null is en deze wijzigen in tekenreeks NULL. (Nu ook vermeld in de opmerking van @MarkB.)

if ($variable == null){
    $variable = "NULL";
}

Dit levert:

"insert into mytable set mycolumn = NULL"

Houd er rekening mee dat er geen " om de NULL staat, omdat deze nu is samengevoegd met de andere tekenreeks.

*(opmerking:insert into tablename set .. is niet correct, u insert data of je update tablename set gegevens.)



  1. Lijst met elementen van getalnotatie in Oracle

  2. Wat is de standaardnaam van de beperking in SQL Server?

  3. Selecteer alle maanden binnen een bepaalde periode, inclusief die met 0 waarden

  4. 2 manieren om te zien of verouderde functies nog steeds worden gebruikt in een SQL Server-instantie