1 <?xml version="1.0" encoding="UTF-8"?>
3 <doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping"
4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5 xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping
6 http://www.doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
8 <entity name="Doctrine\Tests\Models\CMS\CmsUser" table="cms_users">
11 <named-query name="all" query="SELECT u FROM __CLASS__ u"/>
14 <named-native-queries>
15 <named-native-query name="fetchIdAndUsernameWithResultClass" result-class="CmsUser">
16 <query>SELECT id, username FROM cms_users WHERE username = ?</query>
19 <named-native-query name="fetchAllColumns" result-class="CmsUser">
20 <query>SELECT * FROM cms_users WHERE username = ?</query>
23 <named-native-query name="fetchJoinedAddress" result-set-mapping="mappingJoinedAddress">
24 <query>SELECT u.id, u.name, u.status, a.id AS a_id, a.country, a.zip, a.city FROM cms_users u INNER JOIN cms_addresses a ON u.id = a.user_id WHERE u.username = ?</query>
27 <named-native-query name="fetchJoinedPhonenumber" result-set-mapping="mappingJoinedPhonenumber">
28 <query>SELECT id, name, status, phonenumber AS number FROM cms_users INNER JOIN cms_phonenumbers ON id = user_id WHERE username = ?</query>
31 <named-native-query name="fetchUserPhonenumberCount" result-set-mapping="mappingUserPhonenumberCount">
32 <query>SELECT id, name, status, COUNT(phonenumber) AS numphones FROM cms_users INNER JOIN cms_phonenumbers ON id = user_id WHERE username IN (?) GROUP BY id, name, status, username ORDER BY username</query>
35 <named-native-query name="fetchMultipleJoinsEntityResults" result-set-mapping="mappingMultipleJoinsEntityResults">
36 <query>SELECT u.id AS u_id, u.name AS u_name, u.status AS u_status, a.id AS a_id, a.zip AS a_zip, a.country AS a_country, COUNT(p.phonenumber) AS numphones FROM cms_users u INNER JOIN cms_addresses a ON u.id = a.user_id INNER JOIN cms_phonenumbers p ON u.id = p.user_id GROUP BY u.id, u.name, u.status, u.username, a.id, a.zip, a.country ORDER BY u.username</query>
38 </named-native-queries>
40 <sql-result-set-mappings>
41 <sql-result-set-mapping name="mappingJoinedAddress">
42 <entity-result entity-class="__CLASS__">
43 <field-result name="id"/>
44 <field-result name="name"/>
45 <field-result name="status"/>
46 <field-result name="address.zip"/>
47 <field-result name="address.city"/>
48 <field-result name="address.country"/>
49 <field-result name="address.id" column="a_id"/>
51 </sql-result-set-mapping>
53 <sql-result-set-mapping name="mappingJoinedPhonenumber">
54 <entity-result entity-class="CmsUser">
55 <field-result name="id"/>
56 <field-result name="name"/>
57 <field-result name="status"/>
58 <field-result name="phonenumbers.phonenumber" column="number"/>
60 </sql-result-set-mapping>
62 <sql-result-set-mapping name="mappingUserPhonenumberCount">
63 <entity-result entity-class="CmsUser">
64 <field-result name="id"/>
65 <field-result name="name"/>
66 <field-result name="status"/>
68 <column-result name="numphones"/>
69 </sql-result-set-mapping>
71 <sql-result-set-mapping name="mappingMultipleJoinsEntityResults">
72 <entity-result entity-class="__CLASS__">
73 <field-result name="id" column="u_id"/>
74 <field-result name="name" column="u_name"/>
75 <field-result name="status" column="u_status"/>
77 <entity-result entity-class="CmsAddress">
78 <field-result name="id" column="a_id"/>
79 <field-result name="zip" column="a_zip"/>
80 <field-result name="country" column="a_country"/>
82 <column-result name="numphones"/>
83 </sql-result-set-mapping>
84 </sql-result-set-mappings>
86 <id name="id" type="integer" column="id">
87 <generator strategy="AUTO"/>
90 <field name="status" column="status" type="string" length="50" unique="true"/>
91 <field name="username" column="username" type="string" length="255" unique="true"/>
92 <field name="name" column="name" type="string" length="255"/>
94 <one-to-many field="phonenumbers" target-entity="CmsPhonenumber" mapped-by="user" orphan-removal="true">
101 <one-to-many field="articles" target-entity="CmsArticle" mapped-by="user">
107 <one-to-one field="address" target-entity="CmsAddress" inversed-by="user" orphan-removal="true">
111 <join-column name="address_id" referenced-column-name="id" />
114 <one-to-one field="email" target-entity="CmsEmail" inversed-by="user" orphan-removal="true">
118 <join-column referenced-column-name="id" nullable="true" />
121 <many-to-many field="groups" target-entity="CmsGroup">
127 <join-table name="cms_users_groups">
129 <join-column name="user_id" referenced-column-name="id"/>
131 <inverse-join-columns>
132 <join-column name="group_id" referenced-column-name="id"/>
133 </inverse-join-columns>