DataGrip 2021.2 Help

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

  1. Position the caret at the highlighted line and press Alt+Enter or click the Intention action icon.

  2. Click the arrow next to the inspection you want to suppress and select the necessary suppress action.

Last modified: 16 July 2021