2016-04-23 25 views
1

在我公司实体领域的Symfony:空值是不允许的思想已设置为空的真以下

/** 
* @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 company(email,pass,type,name,level,plan,wallet,profpic,tod1,tod2,tod3)VALUES(?,?,?,?,?,?,?,?,? )'with params [“[email protected]”,“test”,“comp”,null,1,null,null,null,null,null,null]:

SQLSTATE [23000]:完整性约束违规:1048列 '名' 不能为空

我做了什么错? 请帮助..

+0

我想你刚刚添加了'nullable'参数给你的实体的属性,但没有更新数据库模式。 –

+0

我已经更新了相应的数据库...但同样的问题正在发生 –

回答

2

从错误发生

例外在执行“INSERT INTO公司(电子邮件,传递,类型,名称,级别,计划,钱包,profpic,tod1,tod2,tod3)VALUES(?,? ,“?”,?,?,?,?,?,?,?)'与params [“[email protected]”,“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 

,然后再试一次不断更新的数据库架构之后。

+0

这工作,谢谢:) –

+0

你欢迎兄弟 –

1

你的错误是Column 'name' cannot be null 是列name也设置为实体(在数据库NULL型)可空?