-1

Web サイトを symfony2/doctrine に書き直そうとしています。テーブルは MyISAM を使用するため、外部キーはありません。

以下のクエリを 2 つのエンティティに変換して、機能する関係を作成することはできません。MyISAMを使っているからですか?

SELECT p.productid, p.price, d.description FROM product p INNER JOIN description d ON p.productid = d.productid;

エンティティでこれproductを試しましたが、まだうまくいきません:

/**
 * @ORM\OneToOne(targetEntity="Description")
 * @ORM\JoinColumn(name="productid", referencedColumnName="productid")
 */
protected $description;
4

1 に答える 1

0

これは MyISAM とは関係ありません。Doctrine は外部キーがなくても機能します (ただし、スキーマ ツールは通常それらを強制します)。生成された DQL をチェックし$query->getSQL()、クエリの結果に対して期待される結果を確認します

于 2013-02-11T04:04:21.290 に答える