1
0
mirror of synced 2025-02-03 13:59:27 +03:00
doctrine2/tests/Doctrine/Tests/ORM/Mapping/php/Doctrine.Tests.Models.CMS.CmsUser.php

211 lines
5.7 KiB
PHP
Raw Normal View History

2012-03-10 00:06:32 -03:00
<?php
$metadata->setPrimaryTable(
[
2012-03-10 00:06:32 -03:00
'name' => 'cms_users',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-10 00:06:32 -03:00
'name' => 'fetchIdAndUsernameWithResultClass',
'query' => 'SELECT id, username FROM cms_users WHERE username = ?',
'resultClass' => 'Doctrine\\Tests\\Models\\CMS\\CmsUser',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-10 00:06:32 -03:00
'name' => 'fetchAllColumns',
'query' => 'SELECT * FROM cms_users WHERE username = ?',
'resultClass' => 'Doctrine\\Tests\\Models\\CMS\\CmsUser',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-10 00:06:32 -03:00
'name' => 'fetchJoinedAddress',
'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 = ?',
'resultSetMapping' => 'mappingJoinedAddress',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-10 00:06:32 -03:00
'name' => 'fetchJoinedPhonenumber',
'query' => 'SELECT id, name, status, phonenumber AS number FROM cms_users INNER JOIN cms_phonenumbers ON id = user_id WHERE username = ?',
'resultSetMapping' => 'mappingJoinedPhonenumber',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-10 00:06:32 -03:00
'name' => 'fetchUserPhonenumberCount',
'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',
'resultSetMapping' => 'mappingUserPhonenumberCount',
]
);
2012-03-10 00:06:32 -03:00
$metadata->addNamedNativeQuery(
[
2012-03-11 12:10:15 -03:00
"name" => "fetchMultipleJoinsEntityResults",
"resultSetMapping" => "mappingMultipleJoinsEntityResults",
"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"
]
);
2012-03-11 12:10:15 -03:00
$metadata->addSqlResultSetMapping(
[
2012-03-10 00:06:32 -03:00
'name' => 'mappingJoinedAddress',
'columns' => [],
'entities' => [
[
'fields'=> [
[
2012-03-10 00:06:32 -03:00
'name' => 'id',
'column' => 'id',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'name',
'column' => 'name',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'status',
'column' => 'status',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'address.zip',
'column' => 'zip',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'address.city',
'column' => 'city',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'address.country',
'column' => 'country',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'address.id',
'column' => 'a_id',
],
],
2012-03-10 00:06:32 -03:00
'entityClass' => 'Doctrine\Tests\Models\CMS\CmsUser',
'discriminatorColumn' => null
],
],
]
);
2012-03-10 00:06:32 -03:00
$metadata->addSqlResultSetMapping(
[
2012-03-10 00:06:32 -03:00
'name' => 'mappingJoinedPhonenumber',
'columns' => [],
'entities' => [
[
'fields'=> [
[
2012-03-10 00:06:32 -03:00
'name' => 'id',
'column' => 'id',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'name',
'column' => 'name',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'status',
'column' => 'status',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'phonenumbers.phonenumber',
'column' => 'number',
],
],
2012-03-10 00:06:32 -03:00
'entityClass' => 'Doctrine\\Tests\\Models\\CMS\\CmsUser',
'discriminatorColumn' => null
],
],
]
);
2012-03-10 00:06:32 -03:00
$metadata->addSqlResultSetMapping(
[
2012-03-10 00:06:32 -03:00
'name' => 'mappingUserPhonenumberCount',
'columns' => [],
'entities' => [
[
'fields' => [
[
2012-03-10 00:06:32 -03:00
'name' => 'id',
'column' => 'id',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'name',
'column' => 'name',
],
[
2012-03-10 00:06:32 -03:00
'name' => 'status',
'column' => 'status',
]
],
2012-03-10 00:06:32 -03:00
'entityClass' => 'Doctrine\Tests\Models\CMS\CmsUser',
'discriminatorColumn' => null
]
],
'columns' => [
[
2012-03-10 00:06:32 -03:00
'name' => 'numphones',
]
]
]
);
2012-03-11 12:10:15 -03:00
$metadata->addSqlResultSetMapping(
[
2012-03-11 12:10:15 -03:00
'name' => 'mappingMultipleJoinsEntityResults',
'entities' => [
[
'fields' => [
[
2012-03-11 12:10:15 -03:00
'name' => 'id',
'column' => 'u_id',
],
[
2012-03-11 12:10:15 -03:00
'name' => 'name',
'column' => 'u_name',
],
[
2012-03-11 12:10:15 -03:00
'name' => 'status',
'column' => 'u_status',
]
],
2012-03-11 12:10:15 -03:00
'entityClass' => 'Doctrine\Tests\Models\CMS\CmsUser',
'discriminatorColumn' => null,
],
[
'fields' => [
[
2012-03-11 12:10:15 -03:00
'name' => 'id',
'column' => 'a_id',
],
[
2012-03-11 12:10:15 -03:00
'name' => 'zip',
'column' => 'a_zip',
],
[
2012-03-11 12:10:15 -03:00
'name' => 'country',
'column' => 'a_country',
],
],
2012-03-11 12:10:15 -03:00
'entityClass' => 'Doctrine\Tests\Models\CMS\CmsAddress',
'discriminatorColumn' => null,
],
],
'columns' => [
[
2012-03-11 12:10:15 -03:00
'name' => 'numphones',
]
]
]
);