Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    517

    [YII] Integrity constraint violation: 1052 Column ' ' in where clause is ambiguous

    Salve ragazzi ho questo errore :

    codice:
    CDbCommand failed to execute the SQL statement: SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'tipo_pubblicita' in where clause is ambiguous.

    la query è questa:
    codice:
    $cliente= Clienti::model()->with(array(
                                                'pubblicitas'=>array(
                                                    'joinType'=>'INNER JOIN',
                                                    'condition'=>'tipo_pubblicita=azienda_del_mese or tipo_pubblicita=all_inclusive',
                                                ),
                                            ))->findAll();
    se inserisco il nome della tabella ovvero cosi:

    codice:
    $cliente= Clienti::model()->with(array(
                                                'pubblicitas'=>array(
                                                    'joinType'=>'INNER JOIN',
                                                    'condition'=>'clienti_pubblicita.tipo_pubblicita=azienda_del_mese or clienti_pubblicita.tipo_pubblicita=all_inclusive',
                                                ),
                                            ))->findAll();
    mi da errore di

    codice:
    CDbCommand failed to execute the SQL statement: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'clienti_pubblicita.tipo_pubblicita' in 'where clause

    come posso risolverlo?

  2. #2
    pupo, ma non fai prima a cercare un forum su Yii?

    cmq vedi dalla documentazione se ti fa vedere la query che genera così vediamo un pò come usa gli alias... comunque vedi nella documentazione come si usano gli alias
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    517
    sto postando sul forum di yii ma nn risp nessuno

  4. #4
    Utilizzare il nome della tabella davanti al nome della colonna dovrebbe risolvere i problemi di ambiguità in una normale query SQL. Purtroppo non conosco yii per sapere il formato che si aspetta. Ti consiglio qualche googlata oppure una lettura della documentazione.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    517
    ragazzi ho risolto attribuendo un'alias in questa maniera:

    codice:
     return $cliente= Clienti::model()->with(array(
                        'pubblicitas'=>array('alias'=>'x',
                                             'joinType'=>'INNER JOIN',
                                             'condition'=>'x.tipo_pubblicita=:p_azienda_del_mese or x.tipo_pubblicita=:p_all_inclusive',
                                             'params'=>array(':p_azienda_del_mese'=>$tipo_pubblicita,':p_all_inclusive'=>'all_inclusive',
                                             ),
                                             'limit'=>1,
                            ),
                ))->findAll();

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    517
    grazie
    Santino83_02 infatti ho risolto con gli alias

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.