Code Inspection: Postgres: Select from procedure call
Reports situations when you make SELECT from a function or a DBLINK without an alias with a type (for example, AS t1(s VARCHAR)
).
This requirement does not apply to scalar functions.
Example (PostgreSQL):
CREATE FUNCTION produce_a_table() RETURNS RECORD AS $$
SELECT 1;
$$ LANGUAGE sql;
SELECT * FROM produce_a_table() AS s (c1 INT);
SELECT * FROM produce_a_table() AS s (c1);
SELECT * FROM DBLINK('dbname=mydb', 'SELECT proname, prosrc FROM pg_proc') AS t1;
The AS s (c1 INT)
has a typed alias, while AS s (c1)
and AS t1
do not. In this case, the second call of produce_a_table()
and DBLINK()
will be highlighted.
Suppress an inspection in the editor
Place the caret at the highlighted line and press Alt+Enter or click .
Click the arrow next to the inspection you want to suppress and select the necessary suppress action.
Last modified: 11 February 2024