我遇到类似问题in this post,但提供的解决方案在我的案例中不起作用。这是问题......
我正在使用Symfony2,它将Doctrine2用于ORM,将新用户插入数据库。当我使用object方法插入用户时,会将空值插入到我不想插入任何内容的字段中(因此将插入默认值)。
这就是我想要生成的INSERT语句的样子:
INSERT into mytable (name) VALUES (?)
array(1) {
[1]=>
string(6) "myName"
}
这就是Doctrine创建INSERT语句的方式
INSERT into mytable (name, token, creationDate) VALUES (?,?,?)
array(3) {
[1]=>
string(6) "myName"
[2]=>
NULL
[3]=>
NULL
}
令牌应具有使用postgresql的uuid_generate_v5方法定义的默认值。 creationDate的默认值为now()。插入doctrine的NULL值将覆盖这些默认值。
有没有办法让学说忽略插入的某些字段?
答案 0 :(得分:1)
尝试在列注释中明确使用nullable = false属性。