Первичный ключ и внешний ключ одновременно с доктриной 2

У меня есть две таблицы:

таблица A с id в качестве первичного ключа

] table B с id в качестве первичного ключа и внешнего ключа

Объяснение краткости:

Мне нужно иметь в таблице B [11 96324] первичный ключ, который также должен быть внешним ключом, который указывает на первичный ключ таблицы A .

Кто-нибудь может объяснить мне, как сопоставить это с помощью аннотаций в Doctrine 2?

Примечание:

Я пробовал Это:

   class A
{
    /**
     * @var bigint $id
     *
     * @Column(name="id", type="bigint", nullable=false)
     * @Id
     * @GeneratedValue(strategy="IDENTITY")
     */
    private $a_id;
...

и B таблица:


class B
{
    /**
     * @var bigint $id
     * @Id 
     * @OneToOne(targetEntity="A", fetch="LAZY")
     * @JoinColumn(name="id", referencedColumnName="id")
     */
    private $b_id;
...

Но это дает мне эту ошибку:

Неперехваченное исключение 'Доктрина \ ORM \ Mapping \ MappingException' с сообщением 'Без идентификатора / первичный ключ, указанный для объекта "B". Каждые У объекта должен быть идентификатор / основной ключ. ' в /var/www/agr-reg-php/Doctrine/ORM/Mapping/MappingException.php:37 Трассировка стека:

Примечание: у меня не должно быть составного первичного ключа.

11
задан Elnur Abdurrakhimov 20 October 2012 в 16:30
поделиться