当我尝试执行此Sql-Statement时出现此错误:
* 致命错误:未捕获异常'PDOException',消息'SQLSTATE [23000]:完整性约束违规:1052列'id_actualite'在where子句中是不明确的'在C:\ wamp \ www \ contradictors \ library \第234行的Zend \ Db \ Statement \ Pdo.php
这是我的代码:
<?php
class Critique extends Zend_Db_Table
{
protected $_name = "Critique" ;
public function select_critique($limit1, $limit2)
{
$db = $this -> getDefaultAdapter() ;
$last_actu = $db -> select()
-> order('id_actualite DESC')
-> from('Actualite')
-> limit($limit1) ;
$last_actu = $last_actu -> query() ;
$last_actu = $last_actu -> fetch() ;
$select = $db -> select()
-> from('Critique')
-> order('id_critique DESC')
-> join('Actualite', 'Critique.id_actualite = Actualite.id_actualite')
-> where('id_actualite = ' . $last_actu['id_actualite'])
-> limit($limit2) ;
return $select -> query() ;
}
}
?>
我对这个错误一无所知:( 谢谢
答案 0 :(得分:2)
您有两列名为id_actualite
:Critique.id_actualite
和Actualite.id_actualite
,因此where子句
where('id_actualite = ' . $last_actu['id_actualite'])
含糊不清。尝试将其更改为
where('Critique.id_actualite = ' . $last_actu['id_actualite'])
或
where('Actualite.id_actualite = ' . $last_actu['id_actualite'])