我今天意识到我错过了我的一个实体。我生成了XML元数据,然后生成了实体。我尝试重新生成实体,但仍然无法成功重新生成它。
该实体具有复合主键。并且该密钥的每个部分实际上都是foregin密钥。
SQL:
CREATE TABLE lajki (
_wydarzenie_id INT NOT NULL,
_uzytkownik_id INT NOT NULL,
_lajk_data DATETIME NOT NULL,
PRIMARY KEY (_wydarzenie_id, _uzytkownik_id),
FOREIGN KEY (_uzytkownik_id) REFERENCES uzytkownicy(_uzytkownik_id),
FOREIGN KEY (_wydarzenie_id) REFERENCES wydarzenia(_wydarzenie_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE utf8_general_ci;
XML元数据:
<?xml version="1.0" encoding="utf-8"?>
<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
<entity name="Lajki" table="lajki">
<change-tracking-policy>DEFERRED_IMPLICIT</change-tracking-policy>
<id name="wydarzenieId" type="integer" column="_wydarzenie_id"/>
<id name="uzytkownikId" type="integer" column="_uzytkownik_id"/>
<field name="lajkData" type="datetime" column="_lajk_data"/>
<lifecycle-callbacks/>
</entity>
</doctrine-mapping>
要让它工作,我需要做些什么?我是自己编写实体还是只是要改变一些东西?