postgres9.2はjson
列をサポートしています。postgres
カラムに基づいて自動的にインデックスを作成するように拡張するための最良の方法は何でしょうかjson
。
例えば、
create table obj(
obj_id bigserial primary key,
col1 varchar(20),
col2 date,
obj json
);
create index obj_col1 on obj( col1 );
create index obj_col2 on obj( col2 );
レコードが挿入または更新さcol1
れ、列col2
から設定されたとき。obj
基本的に、主キーとjson列自体を除くすべての属性は、jsonオブジェクトから自動的に設定されます。
相関関係として、名前を変更すると属性col1
も更新され、そこで名前が新しい名前に変更されます。json
col1
catalogue
およびステートメントを使用して実行できますがexecute
、罪のように遅くなります。
テーブルごとにトリガーを作成することで実行できますが、これは面倒でエラーが発生しやすくなります。
トリガーは継承できないため、継承によって達成することはできません。
extension
行くための最良の方法ですか?それはどのように見えるでしょうか?
extension
pgはCREATETABLEまたはALTERTABLEのトリガーをサポートしていないため、これを行うために書き込むことはできません。
応急修理の唯一の提案は、DDLのログを記録し、ログを監視してから、プロシージャを実行することです。これは可能ですが、実際に必要なのは、CREATEおよびALTERTABLEのトリガーです。