이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다토토 사이트 추천 : 문서 : 17 : 32 장. LIBPQ - C 라이브러리버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

28 장libpq-C 라이브러리

libpqC응용 프로그램 프로그래머의 인터페이스PostgreSQL. libpq는 일련의 라이브러리 기능입니다PostgreSQL백엔드 서버 및 수신

libpq도 기본입니다PostgreSQL응용 프로그램 인터페이스를 포함합니다ECPG. 그래서의 일부 측면libpq의 행동이 중요합니다섹션 28.11, 섹션 28.12and섹션 28.14행동을 설명하십시오libpq.

이 장의 끝에 일부 짧은 프로그램이 포함되어 있습니다.섹션 28.17) 방법을 보여줍니다libpq.libpq디렉토리의 응용 프로그램src/test/examples소스 코드에서

사용하는 클라이언트 프로그램libpq헤더 파일을 포함해야합니다libpq-fe.hlibpq도서관.

28.1. 데이터베이스 무지개 토토 제어

다음 기능은 A와 무지개 토토하는 것을 처리합니다PostgreSQL백엔드 서버. anpgconn객체, 함수에서 얻은 객체pqconnectdb또는pqsetdblogin. 이러한 기능은 그럴 것입니다pgconn개체. 그만큼pqstatus함수를 확인하도록 요청해야합니다

pqconnectdb

데이터베이스 서버에 새로운 무지개 토토을합니다.

pgconn *pqconnectdb (const char *conninfo);

이 기능은 새로운 데이터베이스 무지개 토토을 사용하여 엽니 다Conninfo. 같지 않은pqsetdblogin아래, 매개 변수 세트PQConnectStartandPQConnectPoll)가 선호됩니다

전달 된 문자열은 모든 기본값을 사용하기 위해 비어있을 수 있습니다.keyword = value.키워드 =. 내에서 단일 따옴표와 백 슬래시\ 'and\\.

현재 인식 된 매개 변수 키 단어는 다음과 같습니다.

host

무지개 토토할 호스트 이름.이것이 슬래시로 시작하면host지정되지 않은 것은 UNIX- 도메인에 무지개 토토하도록합니다in/tmp(또는 모든 소켓PostgreSQL건축). ~에LocalHost.

hostaddr

무지개 토토할 호스트의 숫자 IP 주소. 이것172.28.40.9. 당신의 경우

사용hostaddr대신host허용host지정hostaddr, 호스트 이름hostaddr지정host,hostaddr원격 주소를 제공합니다. Kerberos가 사용될 때, ahostandhostaddrarehostaddr원격 주소를 제공합니다.hostISlibpqahostaddr.) 또한host대신hostaddr익숙합니다~/.pgpass(참조섹션 28.12).

호스트 이름 또는 호스트 주소가 없으면libpq무지개 토토됩니다LocalHost.

포트

서버 호스트에서 무지개 토토할 포트 번호 또는

dbname

데이터베이스 이름. 기본값은 동일합니다

사용자

PostgreSQL사용자

비밀번호

서버가 요구하는 경우 사용할 비밀번호

Connect_Timeout

최대 무지개 토토 대기, 초

옵션

명령 줄 옵션으로 전송됩니다

tty

무시했습니다 (이전에는 보내야 할 위치가 지정되었습니다

sslmode

이 옵션은 무엇인지 또는 무엇을 결정합니다SSL무지개 토토은 서버와 협상됩니다.비활성화만 시도 할 것입니다SSL무지개 토토;허용의지SSL무지개 토토, 그렇다면SSL무지개 토토;선호(기본값)는 협상 할 것입니다.SSL무지개 토토, 그렇다면SSL무지개 토토;요구만 시도 할 것입니다SSL무지개 토토.

ifPostgreSQL옵션을 사용하여 SSL 지원없이 컴파일됩니다요구an허용and선호libpq실제로 시도하지 않을 것입니다SSL무지개 토토.

요구 사항

이 옵션은에 찬성하여 더 이상 사용되지 않습니다.sslmode설정.

1으로 설정된 경우, anSSL서버에 대한 무지개 토토은입니다sslmode 요구). libpq그런 다음 거부합니다SSL무지개 토토.libpq협상 할 것입니다sslmode 선호). 이 옵션은 전용입니다PostgreSQL

krbsrvname

Kerberos 서비스 이름을 인증 할 때 사용할 수 있습니다섹션.)

서비스

추가 매개 변수에 사용할 서비스 이름.서비스섹션.

매개 변수가 지정되지 않은 경우섹션 28.11)가 확인됩니다. 만약

pqsetdblogin

데이터베이스 서버에 새로운 무지개 토토을합니다.

pgconn *pqsetdblogin (const char *pghost,

이것은의 전임자입니다.pqconnectdb고정 된 세트가 있습니다null또는 빈 문자열

pqsetdb

데이터베이스 서버에 새로운 무지개 토토을합니다.

pgconn *pqsetdb (char *pghost,

이것은 호출하는 매크로입니다pqsetdblogin로그인andPWD매개 변수. 그것은 제공됩니다

PQConnectStart
PQConnectPoll

a

pgconn *pqconnectstart (const char *conninfo);
PostGrespollingStatUstype PQConnectPoll (PgConn *Conn);

이 두 기능은pqconnectdb따라서 응용 프로그램이 가능합니다

데이터베이스 무지개 토토은 매개 변수를 사용하여 이루어집니다Conninfo,PQConnectStart.pqconnectdb.

아니PQConnectStartNORPQConnectPoll의지

  • thehostaddrandhost매개 변수가 사용됩니다pqconnectdb위의 자세한 내용은

  • 전화하면pqtrace,

  • 소켓이 적절한 지 확인하십시오PQConnectPoll22496_22531

비 차단 무지개 토토 요청을 시작하려면 전화conn = pqConnectStart ( "Connection_info_string"). 만약에connlibpq할당 할 수 없었습니다pgconn구조.pgconn포인터가 반환되었습니다 (아직 유효한 것을 나타내지는 않지만PQConnectStart, Call상태 = pqstatus (conn). 만약에상태EqualsConnection_Bad, PQConnectStart실패했습니다.

ifPQConnectStart성공, 다음 단계는 투표하는 것입니다libpq진행할 수 있습니다pqsocket (conn)설명자를 얻으려면pqconnectpoll (conn)마지막 반품pgres_polling_reading, 기다릴 때까지 기다리십시오select (), poll ()또는 유사한 시스템 기능).pqconnectpoll (conn)다시. 거꾸로,pqconnectpoll (conn)마지막pgres_polling_writing,pqconnectpoll (conn)다시.PQConnectPoll, 즉, 즉PQConnectStart,pgres_polling_writing. 이 루프를 계속하십시오pqconnectpoll (conn)반환pgres_polling_failed,pgres_polling_ok,

무지개 토토하는 동안 언제든지의 상태pqstatus. 이것이주는 경우Connection_Bad, 그런 다음 무지개 토토Connection_okPQConnectPoll, 위에서 설명합니다. 다른

Connection_started

무지개 토토이 이루어지기를 기다리고 있습니다.

Connection_Made

무지개 토토 확인; 보내기를 기다리고 있습니다.

Connection_awaiting_Response

서버에서 응답을 기다리고 있습니다.

Connection_auth_ok

인증을 받았습니다. 백엔드를 기다리고 있습니다

Connection_SSL_STARTUP

SSL 암호화 협상.

Connection_Setenv

환경 중심 매개 변수 협상

이 상수는 여전히 남아 있지만 (in

스위치 (pqstatus (conn))

theConnect_Timeout사용 할 때 무지개 토토 매개 변수가 무시됩니다PQConnectPoll; 응용 프로그램입니다PQConnectStart뒤 따르는PQConnectPoll루프입니다pqconnectdb.

ifPQConnectStart널을 반환합니다pqfinish당신이 그것을 끝내면,

pqconndefaults

기본 무지개 토토 옵션을 반환합니다.

pqconninfooption *pqconndefaults (void);

무지개 토토 옵션 배열을 반환합니다. 이것은 사용될 수 있습니다pqconnectdb옵션 및 현재pqconninfooption구조,키워드포인터. 널 포인터는입니다val필드)는 환경 변수 및 기타에 따라 다릅니다

옵션 배열을 처리 한 후 통과하여 자유롭게 해방하십시오PQCONNINFOFREE. 만약에pqconndefaults.

pqfinish

서버 무지개 토토을 닫습니다. 또한 메모리를 해방시킵니다pgconn개체.

void pqfinish (pgconn *conn);

서버 무지개 토토 시도가 실패하더라도 주목하십시오pqstatus),pqfinishpgconn개체. 그만큼pgconn포인터를 다시 사용해서는 안됩니다pqfinish

pqreset

통신 채널을 서버로 재설정합니다.

void pqreset (pgconn *conn);

이 기능은 서버에 대한 무지개 토토을 닫습니다

PQRESETSTART
pqresetpoll

통신 채널을 서버로 재설정하십시오

int pqresetstart (pgconn *conn);
PostGrespollingStatusType PQRESETPOLL (PGCONN *CONN);

이 기능은 무지개 토토을 닫습니다pqreset(위) aPQConnectStartandPQConnectPoll.

무지개 토토 재설정을 시작하려면 CallPQRESETSTART. 0을 반환하면pqresetpoll정확히PQConnectPoll.