이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

제3장.pg사설 토토- 사설 토토 바인딩 라이브러리

목차
3.1. 소개
3.2. 로드 중pg사설 토토응용 프로그램에
3.3. pg사설 토토명령 참조 정보
pg_connect -- 열다 백엔드 서버에 연결
pg_disconnect -- 닫기 백엔드 서버에 대한 연결
pg_conndefaults -- 얻다 기본 연결 매개변수에 대한 정보
pg_exec -- 보내다 서버에 대한 명령 문자열
pg_result -- 얻다 쿼리 결과에 대한 정보
pg_select -- 루프 SELECT 문의 결과에 대해
pg_execute -- 보내다 쿼리하고 선택적으로 결과를 반복
pg_listen -- 설정 또는 비동기 NOTIFY 메시지에 대한 콜백 변경
pg_on_connection_loss -- 설정 또는 예상치 못한 연결 끊김에 대한 콜백을 변경하세요.
pg_lo_creat -- 만들기 큰 물체
pg_lo_open -- 열다 대형 개체
pg_lo_close -- 닫기 큰 물체
pg_lo_read -- 읽어보세요 대형 개체
pg_lo_write -- 쓰기 큰 물체
pg_lo_lseek -- 찾다 큰 물체의 위치로
pg_lo_tell -- 반환 대형 객체의 현재 탐색 위치
pg_lo_unlink -- 삭제 큰 물체
pg_lo_import -- 가져오기 파일의 대형 객체
pg_lo_export -- 내보내기 대형 객체를 파일로

3.1. 소개

pg사설 토토는 다음을 위한 Tcl 패키지입니다. 인터페이스할 클라이언트 프로그램포스트그레SQL서버. 그것은 대부분의 기능libpq사설 토토 스크립트에 사용 가능합니다.

이 패키지는 원래 Jolly Chen이 작성했습니다.

표 3-1에서 사용할 수 있는 명령에 대한 개요를 제공합니다.pg사설 토토. 이러한 명령이 설명되어 있습니다. 다음 페이지에서 더 자세히 설명합니다.

표 3-1.pg사설 토토명령

명령 설명
pg_connect 백엔드 서버에 대한 연결을 엽니다.
pg_disconnect 연결을 닫습니다
pg_conndefaults 연결 옵션 및 기본값 가져오기
pg_exec 백엔드에 쿼리 보내기
pg_result 쿼리 결과 조작
pg_select SELECT 문의 결과 루프
pg_execute 쿼리를 보내고 선택적으로 결과
pg_listen NOTIFY 메시지에 대한 콜백 설정
pg_on_connection_loss 예기치 않은 연결에 대한 콜백 설정 손실
pg_lo_creat 대형 개체 생성
pg_lo_open 큰 개체 열기
pg_lo_close 대형 개체 닫기
pg_lo_read 대형 개체 읽기
pg_lo_write 대형 개체 쓰기
pg_lo_lseek 큰 물체의 위치를 탐색
pg_lo_tell 대규모의 현재 탐색 위치를 반환합니다. 개체
pg_lo_unlink 대형 개체 삭제
pg_lo_import Unix 파일을 대형 객체로 가져오기
pg_lo_export 대형 개체를 Unix 파일로 내보내기

pg_lo_*루틴은 대형 객체 기능에 대한 인터페이스포스트그레SQL. 기능은 다음과 같이 설계되었습니다. 표준 Unix의 유사한 파일 시스템 기능을 모방합니다. 파일 시스템 인터페이스.pg_lo_*루틴은 a 내에서 사용되어야 합니다.시작/커밋다음에 의해 반환된 파일 설명자로 인해 트랜잭션이 차단되었습니다.pg_lo_open다음에만 유효합니다. 현재 거래입니다.pg_lo_import그리고pg_lo_export 반드시다음에서 사용됩니다시작/커밋거래 차단.

예 3-1다음을 보여줍니다 루틴을 사용하는 방법에 대한 작은 예입니다.

예 3-1.pg사설 토토예제 프로그램

# getDBs:
# 주어진 호스트와 포트 번호에 있는 모든 데이터베이스의 이름을 가져옵니다.
# 기본값은 localhost 및 포트 5432입니다.
# 알파벳순으로 반환
proc getDBs  호스트 "localhost" 포트 "5432"  
    # datnames는 결과가 될 목록입니다.
    conn 설정 [pg_connect template1 -host $host -port $port]
    set res [pg_exec $conn "SELECT datname FROM pg_database ORDER BY datname"]
    ntups 설정 [pg_result $res -numTuples]
    for set i 0 $i < $ntups incr i 
        랩펜드 데이터 이름 [pg_result $res -getTuple $i]

    pg_result $res -클리어
    pg_disconnect $콘
    $datnames 반환