N'EST PAS NULL pas de travail dans Yii Active Record

Je suis en train d'essayer quelque chose comme ceci:

public function search() {

        $criteria = new CDbCriteria;

        $criteria->compare('user_details_id', $this->user_details_id);
        $criteria->compare('user_type_id', $this->user_type_id);
        $criteria->compare('customer_basics_id', $this->customer_basics_id);
        $criteria->compare('user_address_id', $this->user_address_id);
        $criteria->compare('user_city_id', $this->user_city_id);
        $criteria->compare('is_active', $this->is_active);
        $criteria->compare('create_dttm', $this->create_dttm, true);
        $criteria->compare('update_dttm', $this->update_dttm, true);

        //if condition is working
        if (isset($_GET['ulip'])) {
            $criteria->addCondition(
                    "customer_basics_id=" . CustomerBasics::getCustomerBasicsId(Yii::app()->session['user_id']), "AND"
            );
            $criteria->addCondition("user_city_id IS NULL");
        //else condition is working
        } else {
            $criteria->addCondition(
                    "customer_basics_id=" . CustomerBasics::getCustomerBasicsId(Yii::app()->session['user_id']), "AND"
            );
            $criteria->addCondition("user_city_id IS NOT NULL");
        }


    return new CActiveDataProvider($this, array(
        'criteria' => $criteria,
        'pagination' => array(
            'pageSize' => 10,
        ),
    ));
}

Ici la question est if condition fonctionne très bien et la présentation des résultats en fonction de la condition, mais d'autre part ne fonctionne pas et ne retourne rien. Je pense que IS NOT NULL n'est pas de travail ici.

Quel est le problème ?

essayez NOT ISNULL(user_city_id)
sa ne fonctionne pas
Hmm, je ne vois rien d'autre, et ce post montre que vous avez la bonne syntaxe stackoverflow.com/questions/18954600/... Tout ce que je pouvais éventuellement suggérer, c'est d'essayer de mettre une valeur statique comme $criteria->addCondition("user_city_id = 1"); ou quelque chose de similaire pour s'assurer qu'il fonctionne jusqu'à ce point.
Êtes-vous sûr qu'il y a toutes les données sont retournées à votre état de santé (user_city_id n'EST PAS NULLE) en DB?
Oui

OriginalL'auteur Sky | 2013-12-12