以下是我公司实体中的字段
/**
* @var int
*
* @ORM\Column(name="plan", type="integer", nullable=true)
*/
private $plan;
/**
* @var float
*
* @ORM\Column(name="wallet", type="float", nullable=true)
*/
private $wallet;
/**
* @var string
*
* @ORM\Column(name="profpic", type="string", length=255, nullable=true)
*/
private $profpic;
/**
* @var float
*
* @ORM\Column(name="tod1", type="float", nullable=true)
*/
private $tod1;
/**
* @var float
*
* @ORM\Column(name="tod2", type="float", nullable=true)
*/
private $tod2;
/**
* @var string
*
* @ORM\Column(name="tod3", type="string", length=255, nullable=true)
*/
private $tod3;
但是我在注册时遇到了这个错误:
执行'INSERT INTO公司(电子邮件,通行证,类型,名称,级别,计划,钱包,profpic,tod1,tod2,tod3)VALUES(?,?,?,?,?,?,? ,?,?,?,?)'与params [“test4@mlm.com”,“test”,“comp”,null,1,null,null,null,null,null,null]:
SQLSTATE [23000]:完整性约束违规:1048列'名称' 不能为空
我做错了什么? 请帮忙..
答案 0 :(得分:4)
从错误
执行'INSERT INTO公司(电子邮件,通行证,类型,名称,级别,计划,钱包,profpic,tod1,tod2,tod3)VALUES(?,?,?,?,?,?,? ,?,?,?,?)'with params [“test4@mlm.com”,“test”,“comp”,null,1,null,null,null,null,null,null]: SQLSTATE [23000]:完整性约束违规:1048列“名称”不能为空
字段名称是必需的。 在您上面的实体中,您忘记发布您的名称列。我确定你在名单栏中犯了一个错误 可以为空的名称列的一个例子是
/**
* @ORM\Column(type="string" ,nullable=true)
*/
protected $name;
之后用
更新数据库架构$ php app/console doctrine:schema:update --force
再试一次。
答案 1 :(得分:1)
您的错误是name
列{{1}}是否也在实体中设置为可空(和数据库中的NULL类型)?