我在一个Doctrine 1查询中遇到(我相信)连接问题。该查询已在Phpmyadmin中进行了测试并确认返回了所需的结果,但是当以Doctrine_Query::create()
运行时,我的php日志中出现Unknown relation alias
错误。
查询:
$q = Doctrine_Query::create()
->select('id')
->from('TableName')
->innerJoin('OtherTable')
->where('TableName.table_column LIKE CONCAT("%[",OtherTable.id,"]%")')
->andWhere('OtherTable.id='.$EXTERNAL_VAR)
->andWhere('TableName.other_table_column=value');
错误(写入外部日志文件):
[Tue Dec 09 11:28:25 2014] [error] [client 127.0.0.1] Unknown relation alias , referer: http://local.environment/
我已将问题隔离为上述查询,但不确定如何重新格式化CONCAT行以按预期工作。
答案 0 :(得分:2)
问题在于你的内心。学说并不了解如何加入表格。 (因此消息"未知关系别名" )
您的架构文件中是否指定了关系? 如果您刚刚定义了此关系或对模式文件进行了其他更改,那么您是否重建了模型? (使用 symfony doctrine:build-model )