Mysql
 sql >> Base de données >  >> RDS >> Mysql

PHP mysql PDO refuse de définir la valeur NULL

Ce qui suit fonctionne pour moi :

<?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();

Passer le null de PHP , de type PDO::PARAM_NULL . Assurez-vous également que votre émulation de préparation est définie sur faux. Cela pourrait aider.