From: Tom Lane Date: Sat, 24 Jan 2004 23:45:13 +0000 (+0000) Subject: Support named parameters in information_schema.parameters, X-Git-Tag: REL8_0_0BETA1~1287 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9d8888079d0fa3575bcda776728212ced5eb5415;p=postgresql Support named parameters in information_schema.parameters, per Dennis Bjorklund. I did not force initdb for this, but you'd need to do one to get the improved view. --- diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgml index 9193280ea6..ff7d877c61 100644 --- a/doc/src/sgml/information_schema.sgml +++ b/doc/src/sgml/information_schema.sgml @@ -1,4 +1,4 @@ - + The Information Schema @@ -1823,7 +1823,7 @@ ORDER BY c.ordinal_position; The view parameters contains information about - the parameters (arguments) all functions in the current database. + the parameters (arguments) of all functions in the current database. Only those functions are shown that the current user has access to (by way of being the owner or having some privilege). @@ -1875,8 +1875,8 @@ ORDER BY c.ordinal_position; parameter_mode character_data - Always IN, meaning input parameter (In the - future there might be other parameter modes.) + Always IN, meaning input parameter (in the + future there might be other parameter modes) @@ -1895,7 +1895,7 @@ ORDER BY c.ordinal_position; parameter_name sql_identifier - Always null, since PostgreSQL does not support named parameters + Name of the parameter, or null if the parameter has no name diff --git a/src/backend/catalog/information_schema.sql b/src/backend/catalog/information_schema.sql index db4d79f6de..d9c484b024 100644 --- a/src/backend/catalog/information_schema.sql +++ b/src/backend/catalog/information_schema.sql @@ -4,7 +4,7 @@ * * Copyright 2003, PostgreSQL Global Development Group * - * $PostgreSQL: pgsql/src/backend/catalog/information_schema.sql,v 1.21 2003/12/17 22:11:30 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/catalog/information_schema.sql,v 1.22 2004/01/24 23:45:13 tgl Exp $ */ /* @@ -703,7 +703,7 @@ CREATE VIEW parameters AS CAST('IN' AS character_data) AS parameter_mode, CAST('NO' AS character_data) AS is_result, CAST('NO' AS character_data) AS as_locator, - CAST(null AS sql_identifier) AS parameter_name, + CAST(NULLIF(p.proargnames[pos.n], '') AS sql_identifier) AS parameter_name, CAST( CASE WHEN t.typelem <> 0 AND t.typlen = -1 THEN 'ARRAY' WHEN nt.nspname = 'pg_catalog' THEN format_type(t.oid, null)