5

我有一个遗留数据库,它必须在数据类型、列名和大小等方面完全保持原样。使用额外的 Column 注释,关系将变得无用。使用这样的 columnDefinition:

@ORM\JoinColumn(name="user_contact", referencedColumnName="contact_id", nullable=false, columnDefinition="int(11) DEFAULT '0'")

更改脚本总是运行,所以这不是一个好的解决方案。有没有办法指定 JoinColumn 的类型、长度(大小)和默认值?

4

1 回答 1

-3

JoinColumn注释用于在实体之间创建关系的过程中,而不是用于创建新列。从文档中,

此注释用于@ManyToOne、@OneToOne 字段中的关系上下文以及嵌套在@ManyToMany 内的@JoinTable 的上下文中。


使用 **column** 注释创建一个新列。看这个:
/**
 * @var integer
 *
 * @ORM\Column(name="user_contact", type="integer", options={"default":0})
 */
private $userContact;

更新 关于列和连接列注释参考的最新文档可以在这里找到:https ://www.doctrine-project.org/projects/doctrine-orm/en/2.9/reference/annotations-reference.html

于 2016-02-14T09:48:34.617 回答