首页 > 解决方案 > 与另一个实体有关系的列被截断

问题描述

当我尝试更新方案时,出现以下错误:

  An exception occurred while executing 'ALTER TABLE TechSummaryRdvDocuments CHANGE carRegistration_i  
  d carRegistration_id VARCHAR(255) NOT NULL, CHANGE idCardRecto_id idCardRecto_id VARCHAR(255) NOT N  
  ULL, CHANGE idCardVerso_id idCardVerso_id VARCHAR(255) NOT NULL, CHANGE vehicleInspection_id vehicl  
  eInspection_id VARCHAR(255) NOT NULL, CHANGE idCardRectoPartOwner_id idCardRectoPartOwner_id VARCHA  
  R(255) NOT NULL, CHANGE idCardVersoPartOwner_id idCardVersoPartOwner_id VARCHAR(255) NOT NULL':      

  SQLSTATE[01000]: Warning: 1265 Data truncated for column 'idCardRecto_id' at row 848   

它在我的实体中以这种方式定义:

/**
 * @var FileValid
 * @ORM\Column(name="idCardRecto_id")
 * @ORM\OneToOne(targetEntity="Carizy\CoreBundle\Entity\FileValid", cascade={"persist"})
 * @Assert\Valid()
 */
private $idCardRecto;

FileValid具有不同字段的实体在哪里。你知道我该如何解决吗?

标签: sqlsymfonydoctrine

解决方案


听起来您现有的数据库表中已经有一些数据,其中 idCardRecto_id 列值超过了 255 个字符的新列长度(这是字符串列的默认长度,因为您没有编写任何明确的列定义)?即您可以将该列的最大长度定义为更大以匹配您现有的数据,例如:

@ORM\Column(name="idCardRecto_id", length=1000)

推荐阅读