Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy wartość null PHP nie jest równa wartości null MySQL?

Dzieje się tak, ponieważ PHP null jest konwertowany na pusty ciąg „” podczas tworzenia ciągu zapytania.

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

Wyprodukuje:

insert into mytable set mycolumn = 

Aby naprawić zapytanie, musisz sprawdzić, czy zmienna PHP ma wartość null i zmienić ją na ciąg NULL. (Teraz wspomniane również w komentarzu @MarkB.)

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

Spowoduje to:

"insert into mytable set mycolumn = NULL"

Pamiętaj, że NULL nie ma wokół siebie „”, ponieważ jest teraz połączony z innym ciągiem.

*(uwaga:insert into tablename set .. nie jest poprawne, albo insert dane lub update tablename set dane.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Problem Varchar na Mysql 2147483647

  2. Jak sortować czas (w AM / PM) w SQL?

  3. Jak ważne są tabele przeglądowe?

  4. Jak pobrać wiele wierszy z procedury składowanej w MySQL?

  5. Problem z przechowywaniem wartości szerokości i długości geograficznej w bazie danych MySQL