43.4. pl/배트맨 토토의 글로벌 값#

Global Hash를 사용할 수 있습니다%_shared현재 세션의 수명을 요구하는 기능 간의 코드 참조를 포함한 데이터를 저장하려면

공유 데이터에 대한 간단한 예는 다음과 같습니다.

함수 생성 또는 교체 set_var (이름 텍스트, val 텍스트) 텍스트를 $$로 반환합니다.

코드 참조를 사용하는 약간 더 복잡한 예입니다.

function myfuncs ()를 $$로 반환합니다

(위를 One-Liner로 대체 할 수 있습니다return $ _shared myquote-> ($ _ [0]);가독성을 희생하여.)

보안상의 이유로, PL/배트맨 토토은 해당 역할에 대한 별도의 배트맨 토토 통역사에서 하나의 SQL 역할에 의해 호출 된 함수를 실행합니다. 이렇게하면 한 사용자가 다른 사용자의 PL/배트맨 토토 기능의 동작으로 우연히 또는 악의적 인 간섭을 방지합니다.%_shared변수 및 기타 글로벌 상태. 따라서 두 개의 pl/배트맨 토토 함수는 동일한 값의를 공유합니다.%_shared동일한 SQL 역할에 의해 실행되는 경우에만. 단일 세션이 여러 SQL 역할에서 코드를 실행하는 응용 프로그램에서Security Definer함수, 사용역할 설정등) PL/배트맨 토토 기능이 데이터를 통해 데이터를 공유 할 수 있도록 명시적인 조치를 취해야 할 수도 있습니다.%_shared. 그렇게하려면 통신 해야하는 기능이 동일한 사용자가 소유하고 있는지 확인하고 표시하십시오Security Definer. 물론 그러한 기능은 의도하지 않은 일을하는 데 익숙하지 않도록주의해야합니다.

정정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면