Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

PHP mysql PDO se recusa a definir valor NULL


O seguinte funciona para mim:
<?php

$pdo = new PDO("mysql:host=localhost;dbname=test", "root", "pass");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$stmt = $pdo->prepare("INSERT INTO `null_test` (`can_be_null`) VALUES (:null)");
$stmt->bindValue(":null", null, PDO::PARAM_NULL);

$stmt->execute();

Passe o null do PHP , com o tipo de PDO::PARAM_NULL . Além disso, certifique-se de que sua emulação de preparação esteja definida como false. Isso pode ajudar.