http://www.postgresql.org/docs/9.1/static/plpgsql-declarations.html
39.3.3. 类型拷贝
variable%TYPE
%TYPE提供了变量或者表列的数据类型。你可以用这个来声明将持有这些数据库值得变量。例如,假定在你的users表中你有一列,名称为 user_id。为了定义一个和users.user_id拥有同样数据类型的数据类型,你可以写:
user_id users.user_id%TYPE;
通过使用%TYPE,你不需要知道你所参照的数据类型的结构,而且更为重要地,如果将来你所参照的数据Lexington变了(例如:你把user_id的类型由integer变为real),你可能不需要改变你的函数定义。
%TYPE在多态函数中特别有用,因为用于内部变量的数据类型可能会在每次调用之间发生改变。通过使用 将 %TYPE 赋予函数参数或者结果占位符,可以创建合适的变量。