이 기능은 상태를 조사하는 데 사용할 수 있습니다. 기존 데이터베이스 윈 토토 개체입니다.
팁: libpq응용프로그램 프로그래머는 다음과 같아야 합니다. 유지관리에 주의하세요PGconn추상화. 아래에 설명된 접근자 기능을 사용하여 내용을 확인하세요.PGconn. 내부 참조PGconn필드 사용libpq-int.h아님 변경될 수 있으므로 권장됩니다. 미래.
다음 함수는 다음에서 설정된 매개변수 값을 반환합니다. 연결. 이 값은의 수명 동안 고정됩니다.PGconn객체.
PQdb 윈 토토의 데이터베이스 이름을 반환합니다.
char *PQdb(const PGconn *conn);
PQuser 윈 토토의 사용자 이름을 반환합니다.
char *PQuser(const PGconn *conn);
PQpass 윈 토토 비밀번호를 반환합니다.
char *PQpass(const PGconn *conn);
PQ호스트 윈 토토의 서버 호스트 이름을 반환합니다.
char *PQhost(const PGconn *conn);
PQ포트 윈 토토 포트를 반환합니다.
char *PQport(const PGconn *conn);
PQtty 디버그를 반환합니다.TTY윈 토토의. (이것은 더 이상 사용되지 않습니다. 서버가 없기 때문입니다. 더 이상 주의를 기울이십시오.TTY설정되었지만 기능은 그대로 유지됩니다. 이전 버전과의 호환성을 위해.)
char *PQtty(const PGconn *conn);
PQ옵션
다음에 전달된 명령줄 옵션을 반환합니다. 연결을 요청합니다.
char *PQoptions(const PGconn *conn);
다음 함수는 다음과 같이 변경될 수 있는 상태 데이터를 반환합니다. 작업은에서 실행됩니다.PGconn객체.
PQ상태
윈 토토 상태를 반환합니다.
ConnStatusType PQstatus(const PGconn *conn);
상태는 여러 값 중 하나일 수 있습니다. 그러나,
이 중 두 개만 비동기식 외부에 표시됩니다.
윈 토토 절차:CONNECTION_OK그리고CONNECTION_BAD. 와의 좋은 윈 토토
데이터베이스에 상태가 있습니다.CONNECTION_OK. 실패한 윈 토토 시도
상태로 표시됩니다.CONNECTION_BAD. 일반적으로 OK 상태
까지 유지됩니다.PQfinish, 통신 실패
상태가 다음으로 변경될 수 있습니다.CONNECTION_BAD조기. 그 경우에는
애플리케이션이 호출을 통해 복구를 시도할 수 있습니다.PQreset.
다음 항목 참조PQconnectStart그리고PQconnectPoll기타 관련
표시될 수 있는 상태 코드입니다.
PQ트랜잭션상태 현재 거래 중 상태를 반환합니다. 서버.
PGTransactionStatusType PQtransactionStatus(const PGconn *conn);
상태는 다음과 같습니다.PQTRANS_IDLE(현재 유휴 상태),PQTRANS_ACTIVE(명령이 진행 중입니다),PQTRANS_INTRANS(유휴, 유효한 거래 블록) 또는PQTRANS_INERROR(유휴, 실패 거래 블록).PQTRANS_UNKNOWN다음과 같은 경우 보고됩니다. 연결 상태가 좋지 않습니다.PQTRANS_ACTIVE쿼리가 서버로 전송된 경우에만 보고됩니다. 아직 완료되지 않았습니다.
| 주의 |
|
|
PQ매개변수상태 서버의 현재 매개변수 설정을 조회합니다.
const char *PQparameterStatus(const PGconn *conn, const char *paramName);
특정 매개변수 값이 서버에 의해 보고됩니다
윈 토토 시작 시 또는 윈 토토이 시작될 때마다 자동으로
값이 변경됩니다.PQ매개변수상태다음에 사용할 수 있습니다.
이러한 설정을 조사해 보세요. 현재 값을 반환합니다.
알려진 경우 매개변수 또는NULL만약
매개변수를 알 수 없습니다.
현재 릴리스에서 보고된 매개변수는 다음과 같습니다.서버_버전, 서버_인코딩, client_encoding, is_superuser, session_authorization, 날짜 스타일, 간격 스타일, 시간대, integer_datetimes및standard_conforming_strings. (서버_인코딩, 시간대및integer_datetimes보고되지 않았습니다. 8.0 이전 릴리스;standard_conforming_strings보고되지 않았습니다. 8.1 이전 릴리스 기준;간격 스타일릴리스에서 보고되지 않았습니다. 8.4 이전.) 참고서버_버전, 서버_인코딩그리고integer_datetimes다음 이후에는 변경할 수 없습니다. 시작합니다.
3.0 이전 프로토콜 서버는 매개변수를 보고하지 않습니다.
설정했지만,libpq값을 얻기 위한 논리를 포함합니다서버_버전그리고client_encoding어쨌든. 응용프로그램은
사용을 권장합니다PQ매개변수상태대신임시코드를 사용하여 이러한 값을 결정합니다.
(그러나 3.0 이전 연결에서는 다음 사항이 변경된다는 점에 유의하세요.client_encoding경유SET윈 토토 시작 후
반영됨PQ매개변수상태.) For서버_버전, 또한 참조PQ서버버전, 이는 다음을 반환합니다.
훨씬 더 쉽게 숫자 형식으로 정보를 얻을 수 있습니다.
비교하다.
다음 값이 없는 경우standard_conforming_strings보고되었으며, 애플리케이션은 다음과 같다고 가정할 수 있습니다.꺼짐, 즉, 백슬래시는 문자열에서 이스케이프로 처리됩니다. 리터럴. 또한 이 매개변수의 존재 여부를 확인할 수 있습니다. 이스케이프 문자열 구문(이'...')이 허용됩니다.
반환된 포인터가 선언되었지만const, 실제로는 변경 가능한 저장소를 가리킵니다. 와 연관됨PGconn구조. 포인터가 그대로 유지될 것이라고 가정하는 것은 현명하지 않습니다. 쿼리 전반에 걸쳐 유효합니다.
PQ프로토콜 버전 프런트엔드/백엔드 프로토콜을 조사합니다. 사용되었습니다.
int PQprotocolVersion(const PGconn *conn);
응용프로그램은 이를 사용하여 다음을 결정할 수 있습니다. 특정 기능이 지원됩니다. 현재 가능한 값은 2(2.0 프로토콜), 3(3.0 프로토콜) 또는 0입니다. (연결 불량). 연결 후에도 변경되지 않습니다. 시작이 완료되었지만 이론적으로는 변경될 수 있습니다. 연결 재설정 중. 3.0 프로토콜은 일반적으로 통신할 때 사용됩니다PostgreSQL7.4 이상 서버; 7.4 이전 서버는 프로토콜 2.0만 지원합니다. (프로토콜 1.0은 더 이상 사용되지 않으며 지원되지 않음libpq.)
PQ서버버전 백엔드 버전을 나타내는 정수를 반환합니다.
int PQserverVersion(const PGconn *conn);
응용프로그램은 이를 사용하여 버전을 결정할 수 있습니다. 연결된 데이터베이스 서버. 번호는 주 번호, 부 번호, 개정 번호를 변환하여 구성됨 두 자리 숫자로 나누어서 덧붙입니다. 예를 들어 버전 8.1.5는 80105로 반환됩니다. 버전 8.2는 80200으로 반환됩니다(선행 0은 표시되지 않음). 연결이 불량하면 0이 반환됩니다.
PQerrorMessage 오류를 반환합니다. 가장 최근에 작업에 의해 생성된 메시지 윈 토토.
char *PQerrorMessage(const PGconn *conn);
거의 모든libpq함수는 메시지를 설정합니다PQerrorMessage실패할 경우. 다음을 참고하세요.libpq규칙,
비어 있지 않음PQerrorMessage결과는 여러 줄일 수 있으며 후행을 포함합니다.
개행. 호출자는 결과를 직접 해제해서는 안 됩니다. 그것
윈 토토된 경우 해제됩니다.PGconn핸들이 다음으로 전달됨PQfinish. 결과 문자열은 다음과 같으면 안 됩니다.
운영 전반에 걸쳐 동일하게 유지될 것으로 예상됩니다.PGconn구조.
PQsocket연결의 파일 설명자 번호를 얻습니다. 서버에 소켓을 연결합니다. 유효한 설명자는 더 클 것입니다. 0 이상; -1의 결과는 서버가 없음을 나타냅니다. 현재 연결이 열려 있습니다. (이 기간 동안에는 변경되지 않습니다. 정상 작동하지만 연결 설정 중에 변경될 수 있음 또는 재설정합니다.)
int PQsocket(const PGconn *conn);
PQbackendPID프로세스를 반환합니다.ID(PID)이를 처리하는 백엔드 서버 프로세스의 윈 토토.
int PQbackendPID(const PGconn *conn);
백엔드PID이다 디버깅 목적과 비교에 유용합니다.알림메시지(포함PID알림의 백엔드 프로세스). 참고하세요PID다음에서 실행 중인 프로세스에 속합니다. 로컬 호스트가 아닌 데이터베이스 서버 호스트입니다!
PQconnectionNeedsPassword윈 토토 인증 방법이 일치하는 경우 true(1)를 반환합니다. 비밀번호가 필요했지만 사용할 수 있는 비밀번호가 없습니다. 거짓을 반환합니다. (0) 그렇지 않은 경우.
int PQconnectionNeedsPassword(const PGconn *conn);
이 기능은 윈 토토 실패 후에 적용될 수 있습니다 사용자에게 메시지를 표시할지 여부를 결정하려고 시도합니다. 비밀번호.
PQconnectionUsedPassword윈 토토 인증 방법이 일치하는 경우 true(1)를 반환합니다. 비밀번호를 사용했습니다. 그렇지 않은 경우 false(0)를 반환합니다.
int PQconnectionUsedPassword(const PGconn *conn);
이 기능은 실패 또는 실패 후에 적용될 수 있습니다. 성공적인 윈 토토 시도는 서버 여부를 감지 비밀번호를 요구했습니다.
PQgetsslSSL을 반환합니다. 윈 토토에 사용되는 구조이거나 SSL이 없는 경우 null입니다. 사용합니다.
SSL *PQgetssl(const PGconn *conn);
이 구조는 암호화 수준을 확인하는 데 사용할 수 있습니다. 서버 인증서 등을 확인하세요. 참조오픈SSL에 대한 문서 이 구조에 대한 정보입니다.
정의해야 합니다.USE_SSL순서대로 이 함수에 대한 올바른 프로토타입을 얻으려면 이것을 하면서 또한 자동으로 포함됩니다ssl.hfromOpenSSL.