非常に単純なエンティティ:
class Users {
/**
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
* @ORM\Column(type="integer")
*/
protected $userid;
/** @ORM\Column(type="string") */
protected $username;
}[...]
ネイティブクエリを実行しようとしている間
$rsm = new \Doctrine\ORM\Query\ResultSetMapping;
$rsm->addEntityResult('Application\Entity\Users', 'u');
$rsm->addFieldResult('u', 'test', 'username');
$rsm->addFieldResult('u', 'userid', 'userid');
$q = $objectManager->createNativeQuery('SELECT u.username as test, u.userid from users u where u.userid=17',$rsm);
$result = $result->getResult();
$result は、oracle (oci8 ドライバーおよび pdo) で空の配列を返します。MySQL では、すべて問題ありません。データベースは、Oracle と MySQL の間でまったく同じであり、同じテーブル、同じ列です。
テーブル 'users' は空ではありません。これは、DQL を使用すると機能するためです。ネイティブ クエリで addRootEntityFromClassMetadata() を使用する場合にも機能します。
oci8+addEntityResult()でのみ問題が発生するようです。
何か案が ?
事前に感謝します。