hongliu zou escreveu:
> 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;
>
Try:
EXECUTE '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?|
>
Look Executing Dynamic Commands at:
http://www.postgresql.org/docs/8.2/interactive/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN
[]s
Osvaldo
_______________________________________________________
Yahoo! Mail - Sempre a melhor opção para você!
Experimente já e veja as novidades.
http://br.yahoo.com/mailbeta/tudonovo/