- PostgreSQL 9.1
- 分割されたテーブル
- tbl_master
- tbl_slave1 (マスターを継承)
- tbl_slave2 (マスターを継承)
- Yii フレームワーク 1.1.10
誰かが Yii + PostgreSQL パーティション テーブルについての経験を共有できるかもしれません。パーティション化されたテーブル、チェック、およびトリガーを備えた PostgreSQL の部分はうまく機能しますが、Yii にこれらのテーブルを気に入ってもらうことはできません..
問題は、パーティション化されたテーブルへの挿入時にPostgreSQLが提供0 rows affected
することであり、これを回避する方法がわかりません。Yii モデルは、新しいレコードが保存されていないと見なし (保存されています)、$Model->save();
false を返すためafterSave()
、機能していません。
他のすべての方法はうまく機能し->find()
ています。->findAll()
今保存したレコードを更新しても、すべて問題なく実行さafterSave
れます。問題は->save()
一部だけです。
新しい行を挿入するときにのみトリガーがあるため、更新が機能します。
トリガーを使用して、新しいデータをテーブルごとに分割しています。slave
おそらく、トリガーを変更して、新しいデータをテーブルに転送していないことを postgres が認識できるようにする必要がありmaster
ますか?
もう一つ。テーブルに主キーを追加したmaster
ので、Yii モデル (CActiveRecord) は pk のないテーブルについてエラーをスローしません。ドキュメントがこれを示唆していないことは知っていますが、このように機能しました。自分の状況の全体像を伝えようとしているだけです。
ありがとう!