쿼리의 문자열 표현을 입력으로 사용하는 PostgreSQL 라이브러리의 확장 기능을 연구 중입니다. 기본적으로이 문자열 기반 쿼리가 생성하는 결과 테이블을 인스턴스화하고 수정 한 다음 다른 함수에 전달해야합니다.PostgreSQL의 EXECUTE 문 구문 오류
은 지금은 단지 임시 테이블로 instatiated 쿼리를 얻기 위해 노력하고, 그래서 나는이 샘플 쿼리를 사용하고 있습니다 :
CREATE TEMPORARY TABLE pgr_table (seq INTEGER, path_seq INTEGER, node INTEGER, edge BIGINT, cost DOUBLE PRECISION, agg_cost DOUBLE PRECISION);
EXECUTE 'SELECT gid AS id, source, target, cost, reverse_cost FROM ways;' INTO pgr_table;
을하지만 이것은 단지 EXECUTE
명령 후, 구문 오류가 발생합니다. 올바르게 사용하지 않습니까?
덧붙여서 나는 SQL 주입의 위험성을 알고 EXECUTE
willy-nilly를 사용하고 있습니다. 내가 작성한 쿼리는 프런트 엔드 용도로 설계되지 않았으며 내가 수정중인 라이브러리에서 이미 설정 한 디자인 패턴을 따르고 있습니다.
PL/pgSQL 함수 내에서만'execute'를 사용할 수 있습니다 –
SQL 실행과 plpgsql 실행을 혼동합니다. –