Postgresql 9.2 でユーザー定義型を実装していて、混乱しました。PostgreSQL 9.2 のドキュメントには、ユーザー定義型に関するセクション (35.11) があります。そのセクションの 3 番目の段落では、ドキュメントは型の構築に使用される入力関数と出力関数を参照しています。これらの関数の目的について混乱しています。ディスク上の表現に関心がありますか、それともメモリ内表現のみに関心がありますか? 上記のセクションでは、入力関数と出力関数を定義した後、次のように述べています。
型を単に格納するだけでなく、それ以上のことをしたい場合は、型に対して必要な操作を実装する追加の関数を提供する必要があります。
入力関数と出力関数はシリアル化を処理しますか? 私が理解しているように、入力関数は実行に使用されるINSERT INTO
関数であり、出力関数SELECT
は型に対して実行されるため、基本的に実行したい場合はINSERT INTO
、入力または出力関数に埋め込まれた、または呼び出されたシリアル化関数が必要です。誰かが私にこれを説明するのを助けることができますか?