[SQL] 어떻게 PostgreSQL의 일시적 기능을 만드는 방법?
SQL어떻게 PostgreSQL의 일시적 기능을 만드는 방법?
나는 데이터베이스에 루프를 실행해야합니다. 이것은 단지 한 번 요구 사항입니다. 기능을 실행 한 후, 지금은 기능을 포기하고있다.
일시 / 처분 할 수있는 기능을 만들기위한 좋은 방법이 있습니까?
해결법
-
==============================
1.내가 쓰는 된 스크립트에 많은 시간을 사용하는 방법을 알 필요. 당신 밝혀은 pg_temp 스키마를 사용하여 임시 기능을 만들 수 있습니다. 이것은 당신의 연결 요구에 만든 임시 테이블이 저장되는 곳입니다 스키마입니다. 연결이 폐쇄 또는 만료되면이 스키마는 삭제됩니다. 이 스키마 함수를 만들 수 있는지 턴은 스키마가 자동으로 생성됩니다. 따라서,
내가 쓰는 된 스크립트에 많은 시간을 사용하는 방법을 알 필요. 당신 밝혀은 pg_temp 스키마를 사용하여 임시 기능을 만들 수 있습니다. 이것은 당신의 연결 요구에 만든 임시 테이블이 저장되는 곳입니다 스키마입니다. 연결이 폐쇄 또는 만료되면이 스키마는 삭제됩니다. 이 스키마 함수를 만들 수 있는지 턴은 스키마가 자동으로 생성됩니다. 따라서,
create function pg_temp.testfunc() returns text as $$ select 'hello'::text $$ language sql;
긴 주위에 당신의 연결 막대기 등으로 곁에하는 함수 될 것입니다. 필요가 드롭 명령을 호출 없습니다.
-
==============================
2.@의 crowmagnumb의 대답에 스마트 트릭에 대한 추가 참고 사항 몇 :
@의 crowmagnumb의 대답에 스마트 트릭에 대한 추가 참고 사항 몇 :
CREATE FUNCTION pg_temp.f_inc(int) RETURNS int AS 'SELECT $1 + 1' LANGUAGE sql IMMUTABLE; SELECT pg_temp.f_inc(42); f_inc ----- 43
당신은 단지 반복 기능을 실행할 필요하고 당신이 필요로하는 모든 SQL의 경우, 대신 준비된 명령문을 고려하십시오. 그것은 많은 세션이 끝날 때 사망 임시 SQL 함수와 같은 역할을합니다. 아니 같은 일이하지만, 단지 다른 쿼리 안에 중첩되지, EXECUTE 자체를 사용할 수 있습니다. 예:
PREPARE upd_tbl AS UPDATE tbl t SET set_name = $2 WHERE tbl_id = $1;
요구:
EXECUTE upd_tbl(123, 'foo_name');
세부:
-
==============================
3.당신은 버전 9.0을 사용하는 경우, 새 DO 문이 작업을 수행 할 수 있습니다
당신은 버전 9.0을 사용하는 경우, 새 DO 문이 작업을 수행 할 수 있습니다
http://www.postgresql.org/docs/current/static/sql-do.html
이전 버전을 사용하면 함수를 만들 호출, 다시 드롭해야합니다.
-
==============================
4.광고 호크 절차는, 커서도 나쁘지 않다. 그러나 그들은 용도로 사용하기에는 너무 비효율적이다.
광고 호크 절차는, 커서도 나쁘지 않다. 그러나 그들은 용도로 사용하기에는 너무 비효율적이다.
그들은 당신에게 DB의 SQL 결과에 쉽게 루프를하게됩니다.
from https://stackoverflow.com/questions/4990622/how-to-create-a-temporary-function-in-postgresql by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] PHP의 PDO 연 마 SQL 연결을 폐쇄해야 (0) | 2020.04.25 |
---|---|
[SQL] 합니까 DB2는 "삽입 또는 업데이트"문이? (0) | 2020.04.24 |
[SQL] 왜 사용을 선택 최고 100 %? (0) | 2020.04.24 |
[SQL] 이메일에 대한 HTML 테이블에 SQL 쿼리 결과 테이블로 변환 (0) | 2020.04.24 |
[SQL] 제약 조건 이름의 목적은 무엇인가 (0) | 2020.04.24 |