이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 32.12. 기타 스포츠 토토 베트맨버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

30.10. 범퍼카 토토 기능

언제나 그렇듯이, 맞지 않는 일부 기능이 있습니다 어디서나.

PQfreemem

다음에 의해 할당된 메모리 해제libpq.

void PQfreemem(void *ptr);

다음에 의해 할당된 메모리 해제libpq특히PQescapeByteaConn, PQescapeBytea, PQunescapeByteaPQ알림. 특히 중요합니다 이 기능이 아닌무료(), Microsoft Windows에서 사용됩니다. DLL에 메모리를 할당하고 해제하기 때문입니다. 응용 프로그램에서 다음과 같은 경우에만 작동합니다. 멀티스레드/단일 스레드, 릴리스/디버그 및 정적/동적 플래그는 DLL과 신청. Microsoft Windows 이외의 플랫폼에서는 이 함수는 표준 라이브러리 함수와 동일합니다.무료().

PQconninfoFree

다음에 의해 할당된 데이터 구조를 해제합니다.PQconndefaults또는PQconninfoParse.

void PQconninfoFree(PQconninfoOption *connOptions);

간단한PQfreemem할 것이다 배열에는 다음 항목에 대한 참조가 포함되어 있으므로 이렇게 하지 마세요. 보조 문자열.

PQencrypt비밀번호

a의 암호화된 형식을 준비합니다PostgreSQL비밀번호.

char * PQencryptPassword(const char *passwd, const char *user);

이 기능은 클라이언트에서 사용하도록 고안되었습니다. 다음과 같은 명령을 보내려는 애플리케이션사용자 조 비밀번호 'pwd' 변경. 좋다 원래의 일반 텍스트 비밀번호를 보내지 않도록 연습하세요. 그러한 명령은 명령에 노출될 수 있기 때문입니다. 로그, 활동 표시 등. 대신 이것을 사용하십시오 이전에 비밀번호를 암호화된 형태로 변환하는 기능 전송됩니다. 인수는 일반 텍스트 비밀번호이며, 해당 사용자의 SQL 이름입니다. 반환 값은 에 의해 할당된 문자열malloc, 또는NULL메모리가 부족할 경우. 는 호출자는 문자열에 특별한 내용이 포함되어 있지 않다고 가정할 수 있습니다. 이스케이프가 필요한 문자입니다. 사용PQfreemem완료되면 결과를 해제합니다. 그것으로.

PQmakeEmptyPGresult

빈 공간을 구성합니다PGresult주어진 상태의 개체입니다.

PGresult *PQmakeEmptyPGresult(PGconn *conn, ExecStatusType 상태);

이것은libpq의 빈 공간을 할당하고 초기화하는 내부 범퍼카 토토PGresult객체. 이 기능 메모리를 할당할 수 없으면 NULL을 반환합니다. 그것은 일부 응용 프로그램에서 유용하다고 판단하여 내보냈습니다. 결과 개체(특히 오류가 있는 개체) 생성 상태) 자체. 만일이다 null이 아니고상태은 다음을 나타냅니다. error, 지정된 현재 오류 메시지 연결은에 복사됩니다.PGresult. 또한 만일null이 아닙니다. 모든 이벤트 프로시저 연결에 등록된 내용은PGresult. (그들은 얻지 못한다)PGEVT_RESULTCREATE전화하지만 참조PQfireResultCreateEvents.) 참고하세요PQclear해야 한다 결국에는 a와 마찬가지로 객체에 대해 호출됩니다.PGresult반환자libpq그 자체.

PQfireResultCreateEvents

발화 aPGEVT_RESULTCREATE이벤트(참조PostgreSQL : 문서 : 8.4 : 롤 토토 시스템) 에 등록된 각 이벤트 프로시저에 대해PGresult객체. 다음에 대해 0이 아닌 값을 반환합니다. 성공, 이벤트 프로시저가 실패하면 0입니다.

int PQfireResultCreateEvents(PGconn *conn, PGresult *res);

인수가 전달되었습니다 이벤트 절차를 거쳐야 하지만 직접적으로 사용되지는 않습니다. 그것은 할 수 있다 수NULL이벤트 절차가 사용하지 않습니다.

이미 a를 받은 이벤트 프로시저PGEVT_RESULTCREATE또는PGEVT_RESULTCOPY이 개체에 대한 이벤트는 다음과 같습니다. 다시는 해고되지 않았습니다.

이 기능이 분리된 주요 이유PQmakeEmptyPGResult그건 종종 다음을 생성하는 것이 적절합니다.PGresult그리고 이전에 데이터로 채우세요 이벤트 프로시저를 호출합니다.

PQcopyResult

다음의 사본을 만듭니다PGresult객체. 복사본은 소스 결과에 연결되지 않습니다. 방법과PQclear반드시 복사본이 더 이상 필요하지 않을 때 호출됩니다. 기능의 경우 실패하면 NULL이 반환됩니다.

PGresult *PQcopyResult(const PGresult *src, int 플래그);

이것은 정확한 사본을 만들기 위한 것이 아닙니다. 반환된 결과는 항상 입력됩니다PGRES_TUPLES_OK상태이며 복사하지 않습니다. 소스의 모든 오류 메시지. (명령을 복사합니다. 그러나 상태 문자열입니다.) The플래그인수는 그 밖의 무엇을 결정합니다 복사되었습니다. 여러 플래그의 비트별 OR입니다.PG_COPYRES_ATTRS복사를 지정합니다. 소스 결과의 속성(열 정의).PG_COPYRES_TUPLES복사를 지정합니다. 소스 결과의 튜플. (이것은 복사를 의미합니다. 속성도 마찬가지입니다.)PG_COPYRES_NOTICEHOOKS복사를 지정합니다. 소스 결과의 알림 후크.PG_COPYRES_EVENTS복사를 지정합니다. 소스 결과의 이벤트. (그러나 연관된 모든 인스턴스 데이터는 소스와 함께 복사되지 않습니다.)

PQsetResultAttrs

a의 속성을 설정합니다PGresult객체.

int PQsetResultAttrs(PGresult *res, int numAttributes, PGresAttDesc *attDescs);

제공된 내용attDescs은 결과에 복사됩니다. 만약attDescs포인터가 NULL이거나numAttributes1보다 작습니다. 요청이 무시되고 범퍼카 토토가 성공합니다. 만일res이미 속성이 포함되어 있습니다. 기능이 실패합니다. 함수가 실패하면 반환 값 0입니다. 함수가 성공하면 반환 값은 다음과 같습니다. 0이 아닙니다.

PQset값

a의 튜플 필드 값을 설정합니다.PGresult객체.

int PQsetvalue(PGresult *res, int tup_num, int field_num, char *value, int len);

범퍼카 토토는 자동으로 결과의 필요에 따라 내부 튜플 배열. 그러나,tup_num인수는 다음보다 작아야 합니다. 같음PQntuples, 의미 이 범퍼카 토토는 튜플 배열을 한 번에 하나의 튜플만 늘릴 수 있습니다. 시간. 그러나 기존 튜플의 모든 필드는 수정될 수 있습니다. 어떤 순서로든. 값이field_num이미 존재합니다. 덮어썼습니다. 만일lenis-1또는isNULL, 필드 값은 SQL로 설정됩니다.NULL.결과의 개인 저장소에 복사되므로 범퍼카 토토가 반환된 후에는 더 이상 필요하지 않습니다. 기능의 경우 실패하면 반환 값은 0입니다. 범퍼카 토토가 성공하면, 반환 값은 0이 아닙니다.

PQresultAlloc

a에 대한 보조 저장공간 할당PGresult객체.

void *PQresultAlloc(PGresult *res, size_t nBytes);

이 범퍼카 토토로 할당된 모든 메모리는 해제됩니다 언제res삭제되었습니다. 만약 함수가 실패하면 반환 값은 다음과 같습니다.NULL. 결과는 보장됩니다 다음과 같이 모든 유형의 데이터에 대해 적절하게 정렬됩니다.malloc.