Как прочитать значения из одного плоского файла и использовать их в цикле в файле PostgreSQL? - PullRequest
0 голосов
/ 01 октября 2019

Требуется прочитать значения из одного плоского файла и использовать их в цикле for для изменения запросов pgSQL.

Я новичок в PostgreSQL. Пожалуйста, предложите любой.

CREATE FUNCTION file_vals()
  RETURNS varchar[] AS
  $BODY$
    return (readLines('my_file.txt'))
  $BODY$
  language plpgsql;
DO $ANONYMOUS_BLOCK$ declare
   /* data */
begin
   for c, l in user_c, file_vals()
   loop
    perform x.y(user => c.user, password => l);
     RAISE NOTICE '%', c.user;
   end loop;
end $ANONYMOUS_BLOCK$;

Я пытаюсь прочитать значения из my_file.txt, а также использовать значения в цикле for для вставки значений в базу данных (xy - это функция psql).

my_file.txt содержит пароли:

a
b
c
d

user_c - курсор, который имеет пользовательские значения. Необходимо использовать оба значения, т. Е. User_c и file_vals в одном операторе цикла.

Error:

psql:test.psql:6: ERROR:  syntax error at or near "return"
LINE 4:     return (readLines('my_file.txt'))
            ^
SET
psql:test.psql:20: ERROR:  "c" is not a known variable
LINE 7:    for c, l in user_c, file_vals()
...