我尝试用学说管理我的数据库。
我有两个实体voiture et modele,在3h之后我成功增加了模型。当我编码我的实体voiture
时,它一直显示基础已更新,没有更改。
我的Modele代码:
<?php
/**
* Created by PhpStorm.
* User: jamel_pc
* Date: 2016-11-27
* Time: 9:16 PM
*/
namespace ParcBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Class Modele
* @package ParcBundleEntity
*
* @ORMEntity
* @ORMTable(name="Modele")
*/
class Modele{
/**
*@ORMId
*@ORMColumn(type="integer")
*/
private $id;
/**
* @ORMColumn(type="string",length=255)
*
*/
private $Libelle;
/**
* @ORMColumn(type="string",length=255)
*/
private $Pays;
/**
* @ORMColumn(type="string",length=255)
*/
/**
* @return mixed
*/
public function getLibelle()
{
return $this->Libelle;
}
/**
* @param mixed $Libelle
*/
public function setLibelle($Libelle)
{
$this->Libelle = $Libelle;
}
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
/**
* @param mixed $id
*/
public function setId($id)
{
$this->id = $id;
}
/**
* @return mixed
*/
public function getPays()
{
return $this->Pays;
}
/**
* @param mixed $Pays
*/
public function setPays($Pays)
{
$this->Pays = $Pays;
}
}
和我的Voiture代码:
<?php
/**
* Created by PhpStorm.
* User: jamel_pc
* Date: 2016-11-27
* Time: 11:10 PM
*/
/**
* Class voiture
* @package ParcBundleEntity
*
* @ORMEntity
* @ORMTable(name="Voiture")
*/
namespace ParcBundleEntity;
use DoctrineORMMapping as ORM;
class voiture
{
/**
*@ORMId
*@ORMColumn(type="integer")
*/
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORMColumn(type="string",length=255)
*
*/
private $Serie;
/**
* @ORMColumn(type="datetime",length=255)
*/
private $DateMiseCirculation;
/**
* @ORMColumn(type="string",length=255)
*/
private $Marque;
/**
* @ORMManyToOne(targetEntity="ParcBundleEntityModele" )
* @ORMJoinColumn(name="id", referencedColumnName="id");
*/
private $modele;
/**
* @return mixed
*/
public function getId()
{
return $this->id;
}
/**
* @param mixed $id
*/
public function setId($id)
{
$this->id = $id;
}
/**
* @return mixed
*/
public function getModele()
{
return $this->modele;
}
/**
* @param mixed $modele
*/
public function setModele($id)
{
$this->modele = $modele;
}
/**
* @return mixed
*/
public function getSerie()
{
return $this->Serie;
}
/**
* @param mixed $Serie
*/
public function setSerie($Serie)
{
$this->Serie = $Serie;
}
/**
* @return mixed
*/
public function getDateMiseCirculation()
{
return $this->DateMiseCirculation;
}
/**
* @param mixed $DateMiseCirculation
*/
public function setDateMiseCirculation($DateMiseCirculation)
{
$this->DateMiseCirculation = $DateMiseCirculation;
}
/**
* @return mixed
*/
public function getMarque()
{
return $this->Marque;
}
/**
* @param mixed $Marque
*/
public function setMarque($Marque)
{
$this->Marque = $Marque;
}
}
这是我遇到的错误:
错误:无需更新 - 您的数据库已经与 当前实体元数据。
可能是因为您将其用于实体注释后导入ORM
。
尝试将您的实体注释在下面使用use DoctrineORMMapping as ORM
这样:
<?php
/**
* Created by PhpStorm.
* User: jamel_pc
* Date: 2016-11-27
* Time: 11:10 PM
*/
namespace ParcBundleEntity;
use DoctrineORMMapping as ORM;
/**
* Class voiture
* @package ParcBundleEntity
*
* @ORMEntity
* @ORMTable(name="Voiture")
*/
class voiture
{
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="AUTO")
*/
private $id;
/.../
}
您有两个ID字段的注释。删除其中一个:
/**
*@ORMId
*@ORMColumn(type="integer")
*/
/**
* @var integer
*
* @ORMColumn(name="id", type="integer")
* @ORMId
* @ORMGeneratedValue(strategy="AUTO")
*/