用于postgresql 9.3或更高版本。
如果我创建一个类型:
CREATE TYPE x(INPUT=x_in,OUTPUT=x_out,SEND=x_send,RECEIVE=x_receive,...);
然后对于所有选择和来自字符串强制转换x_in
和x_out
的使用是期望的。但是我的类型有时可能会保存与用户无关的其他信息 - 因此我不应该在x_out
中显示它,但如果数据库被转储/恢复,则应该保留额外的信息。
我试图定义SEND
和RECEIVE
,如果我直接调用它们,它们正在工作,但我在创建转储期间强制pg_dump
使用它们是不成功的
二进制转储创建/恢复:
pg_dump -Fc db --table t > dump.bin
pg_restore -d db -Fc dump.bin
注意:如果我在标准x_out
中显示其他数据,那么转储和一切都会没问题,但有一些第三方工具对格式感到困惑