我正在使用Doctrine\DBAL\Migrations\AbstractMigration::addSql($sql, array $params = array(), array $types = array())
更新我的一个学说迁移中的实体,我必须将列设置为null。
我已经调试了它,我尝试将类型设置为\PDO::PARAM_NULL
,但我遇到了同样的问题。
SQL:
$sql="INSERT INTO sme_task_template (status_change_final_status) VALUES (:finalStatus)";
$params=array(
'finalStatus' => null
);
$types=array(
'finalStatus' => \PDO::PARAM_NULL
);
$this->addSql($sql, $params, $types);
例外:
[Doctrine\DBAL\DBALException]
An exception occurred while executing 'INSERT INTO sme_task_template (statu
s_change_final_status) VALUES (:finalStatus)' with params [null]:
Value for :finalStatus not found in params array. Params array key should b
e "finalStatus"
有谁知道如何解决这个问题?
由于
答案 0 :(得分:1)
我无法使用命名参数,但它似乎与问号参数一起使用。
$sql="INSERT INTO sme_task_template_trigger (status_change_final_status) VALUES (?)";
$params=array(
null
);
$types=array(
\PDO::PARAM_NULL
);
$this->addSql($sql, $params, $types);