| 포스트그레SQL 8.3.23 문서 | ||||
|---|---|---|---|---|
| 이전 | 빠르게 뒤로 | 41장. PL/Python - Python 절차 언어 | 빨리 감기 | 토토 사이트 순위 : 문서 : 8.3 : 토토 사이트 순위 프로그래밍 인터페이스 |
PL/Python 언어 모듈은 자동으로 Python을 가져옵니다
호출된 모듈plpy. 기능과
이 모듈의 상수는 Python 코드에서 사용할 수 있습니다.
와 같이plpy.foo. 현재plpy함수를 구현합니다plpy.debug(msg),
plpy.log(msg), plpy.info(msg),
plpy.notice(msg), plpy.warning(msg),
plpy.error(msg)및plpy.fatal(msg). plpy.error그리고plpy.fatal실제로 파이썬을 키우세요
잡히지 않으면 호출로 전파되는 예외
쿼리로 인해 현재 트랜잭션이나 하위 트랜잭션이
중단되었습니다.plpy를 올립니다.ERROR(msg)그리고올림
plpy.치명적인(msg)있습니다
전화하는 것과 같습니다plpy.error그리고plpy.fatal입니다. 는
다른 기능은 우선순위가 다른 메시지만 생성합니다.
수준. 특정 우선순위의 메시지가 보고되는지 여부
서버 로그에 기록된 클라이언트 또는 두 가지 모두에 의해 제어됩니다.log_min_messages그리고client_min_messages구성 변수. 참조18장더 많은 정보를 원하시면.
또한,plpy모듈
라는 두 가지 함수를 제공합니다.실행그리고준비. 전화 중plpy.execute쿼리 문자열과
선택적 제한 인수로 인해 해당 쿼리가 실행되고
결과 개체에 결과가 반환됩니다. 결과 객체
목록 또는 사전 개체를 에뮬레이트합니다. 결과 개체는 다음과 같습니다.
행 번호와 열 이름으로 액세스합니다. 여기에는 이러한 추가 기능이 있습니다.
방법:nrows이것은 다음을 반환합니다.
쿼리에서 반환된 행 수 및상태이것은SPI_execute()반환값. 결과 객체
수정될 수 있습니다.
예:
rv = plpy.execute("SELECT * FROM my_table", 5)
다음에서 최대 5개의 행을 반환합니다.my_table. 만일my_table열이 있습니다my_column, 다음과 같이 액세스됩니다.
foo = rv[i]["my_column"]
두 번째 기능,plpy.prepare, 준비합니다
쿼리 실행 계획. 쿼리 문자열로 호출되며
매개변수 유형 목록(매개변수 참조가 있는 경우)
쿼리. 예를 들면:
plan = plpy.prepare("SELECT last_name FROM my_users WHERE first_name = $1", [ "text" ])
텍스트은 변수 유형입니다.
통과 예정입니다$1. 준비한 후
진술, 당신은 함수를 사용합니다plpy.execute실행하려면:
rv = plpy.execute(계획, [ "이름" ], 5)
세 번째 인수는 한계이며 선택사항입니다.
PL/Python 모듈을 사용하여 계획을 준비할 때 자동으로 저장됩니다. SPI 문서 읽기(42장) 이것이 무엇을 의미하는지 설명합니다. 함수 호출 전반에 걸쳐 이를 효과적으로 사용하려면 영구 저장소 사전 중 하나를 사용해야 합니다.SD또는GD(참조503 롤 토토 페치 실패). 예를 들면:
CREATE FUNCTION 사용savedplan() $$로 트리거 반환
SD.has_key("계획")인 경우:
계획 = SD["계획"]
그 외:
계획 = plpy.prepare("SELECT 1")
SD["계획"] = 계획
# 나머지 기능
$$ 언어 plpythonu;
| 이전 | 홈 | 토토 사이트 순위 : 문서 : 8.3 : 토토 사이트 순위 프로그래밍 인터페이스 |
| 트리거 기능 | 위로 | 서버 프로그래밍 인터페이스 |