(ZEND)致命错误:带有消息'SQLSTATE [23000]的未捕获异常'PDOException':

时间:2011-12-03 21:28:59

标签: sql zend-db zend-framework

当我尝试执行此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() ;
             }
        }
   ?>

我对这个错误一无所知:( 谢谢

1 个答案:

答案 0 :(得分:2)

您有两列名为id_actualiteCritique.id_actualiteActualite.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'])
相关问题