У меня есть командный сценарий цикла на psql
, который выглядит так:
скрипт.sql
DO $$DECLARE
data_rec RECORD;
r RECORD;
r2 RECORD;
BEGIN
select mytables.data_id into data_rec from mytables where id = :arg1;
FOR r IN select * from
(select * from ...)
LOOP
FOR r2 IN select * from
(...)
LOOP
......
END LOOP;
END LOOP;
END$$;
И я хочу передать arg1
в качестве аргумента из командной строки:
psql -h db.server.com -f script.sql -v arg1=1234 > foo.out
Но я продолжаю получать синтаксическую ошибку в where id = :arg1
, поэтому у меня нет идей, как передать простой параметр в этот скрипт. Предложения приветствуются