Am I forgetting some limitation?
I get " ERROR: syntax error at or near "$1" SQL state: 42601 "with this CREATE FUNCTION Import1() RETURNS text AS $$ DECLARE path Char(100); BEGIN path = 'C:/zhl/hjs/anc_area.att'; COPY anc_areaAtt FROM path CVS; RETURN path; END; $$ LANGUAGE plpgsql; SELECT Import1() ; But COPY can work well when I just put the string in the command: CREATE FUNCTION Import2() RETURNS text AS $$ DECLARE path Char(100); BEGIN COPY anc_areaAtt FROM 'C:/zhl/hjs/anc_area.att' CSV; return path; END; $$ LANGUAGE plpgsql; SELECT Import2() ; Does this mean the "filename" in COPY command can not be a variable? By the way, my OS is windowXP. Thanks and Regards, Hongliu