Почему у меня ошибка в долларовых кавычках при копировании на postgres? - PullRequest
0 голосов
/ 11 июля 2019

У меня проблема с функцией Postgres с файлом COPY TO CSV, у меня ошибка в кавычках

Это функция

CREATE OR REPLACE FUNCTION save_audit_deletions(IN table_name text) 
   RETURNS void AS 
   $body$ 
   DECLARE    
       interval INT; 
   BEGIN        
       COPY (SELECT * FROM table_name WHERE backup = 1) 
          TO'/var/audiobays/logs/audit/table_name_deletions_(date-days).csv' CSV DELIMITER ',' HEADER; 
    END 
    $body$ 
    LANGUAGE plpgsql;

Это ошибка

Error executing: CREATE OR REPLACE FUNCTION save_audit_deletions(IN table_name text) RETURNS void AS
$body$
DECLARE
BEGIN
    EXECUTE FORMAT ('COPY (SELECT * FROM %s WHERE backup = 1) TO ''/var/audiobays/logs/audit
.  Cause: org.postgresql.util.PSQLException: Unterminated dollar quote started at position 87 in SQL CREATE OR REPLACE FUNCTION save_audit_deletions(IN table_name text) 
RETURNS void AS
$body$
DECLARE
BEGIN
    EXECUTE FORMAT ('COPY (SELECT * FROM %s WHERE backup = 1) TO ''/var/audiobays/logs/audit
. Expected terminating $$
Error executing: END
$body$
LANGUAGE plpgsql;


.  Cause: org.postgresql.util.PSQLException: Unterminated dollar quote started at position 5 in SQL END
$body$
LANGUAGE plpgsql;

. Expected terminating $$"
...