2017-09-22 2 views
-2

Je veux faire QueryBuilder sur la mise à jour Joindre 2 tables. Mais je ne sais pas sintaks. S'il vous plaît écrivez des codes pour moi sur la façon de le faire. Je donne par exemple la requête des éléments suivants ci-dessous:Comment faire Query Builder par mise à jour Joindre 2 tables dans le Phalcon

UPDATE Teachers 
    INNER JOIN Education 
    ON Education.id=Teachers.id 
    SET 
     Teachers.userid=:userid:, 
     Teachers.fullname=:fullname:, 
     Teachers.birthday=:birthday:, 
     Teachers.gender=:gender:, 
     Teachers.currentjob=:currentjob:, 
     Education.primaryschool=:primaryschool:, 
     Education.juniorhighschool=:juniorhighschool:, 
     Education.seniorhighschool=:seniorhighschool:, 
    WHERE Teachers.id=:id: 

Répondre

1

Pour autant que je sais PHQL ne permet pas la mise à jour comme celui-ci. Quand vous écrivez une requête de mise à jour de PHQL dans phalcon, c'est en fait une requête SELECT, et une méthode de mise à jour de l'appel pour vous assurer que tous les événements, la validation etc. sont déclenchés pour les modèles. Avec les jointures c'est évidemment un problème comment le faire exactement, parce que vous pourriez rejoindre un modèle qui n'a pas de relations fournies. Phalcon ne supporte pas JOINS avec UPDATE, vous devez utiliser une requête brute.