2017-09-22 11 views
-2

更新結合2テーブルでQueryBuilderを作成したいとします。しかし、私はそれを信じていません。それを作る方法について私にコードを書いてください。私は以下の例のクエリを提供します:更新によるクエリビルダの作成方法Phalconの2つのテーブルを結合するには

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: 

答えて

1

私が知る限り、PHQLはこのような更新を許可していません。 phalconにPHQL更新クエリを書くと、実際にはSELECTクエリが作成され、updateメソッドを呼び出してすべてのイベント、検証などがモデルに対して実行されていることを確認します。結合によって、これは正確にそれを行う方法の問題であることは明らかです。関係を持たないモデルに参加するかもしれないからです。

PhalconはJOINSをUPDATEでサポートしていないため、生のクエリを使用する必要があります。