copy command in postgresql

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • kallem
    New Member
    • Jan 2011
    • 6

    copy command in postgresql

    Hi kindly correct me the following code
    [CREATE OR REPLACE FUNCTION dataimport()
    RETURNS void AS
    $BODY$
    DECLARE

    t_name RECORD;

    BEGIN
    FOR t_name IN
    SELECT
    c.relname
    FROM
    pg_catalog.pg_c lass c LEFT JOIN pg_namespace n ON n.oid = c.relnamespace
    WHERE
    c.relkind = 'r'
    AND n.nspname = 'public'
    ORDER BY 1

    LOOP

    copy t_name.relname from E'C:\\bcp\\'|| t_name.relname| |'.txt' using delimiters '|'

    END LOOP;

    END;
    $BODY$
    LANGUAGE 'plpgsql';]

    i am getting following error
    ERROR: syntax error at or near "$1"
    LINE 1: copy $1 from E'C:\\bcp\\'|| $2 ||'.txt' using delimiters ...
  • rski
    Recognized Expert Contributor
    • Dec 2006
    • 700

    #2
    Use dynamic query
    Code:
    execute 'copy '||t_name.relname||' from E''C:\\bcp\\|| t_name.relname||'.txt'' using delimiters ''|'' ';

    Comment

    Working...