언제나 그렇듯이 어디서나 적합하지 않은 토토 사이트이 있습니다.
PQFREEMEM
메모리가 할당 된 메모리에 의해libpq.
void pqfreemem (void *ptr);
메모리가 할당 된 메모리에 의해libpq, 특히PQESCAPEBYTEACONN
, pqescapebytea
, PQUNESCAPEBYTEA
및pqnotifies
. 이 토토 사이트이보다는 특히 중요합니다.free ()
, Microsoft Windows에서 사용하십시오. 이는 DLL에 메모리를 할당하고 응용 프로그램에서 해제하는 것이 다중 스레드/단일 스레드, 릴리스/디버그 및 정적/동적 플래그가 DLL 및 응용 프로그램에 대해 동일하다면 작동하기 때문입니다.free ()
.
PQCONNINFOFREE
|pqconndefaults
또는PQCONNINFOPARSE
.
void pqconninfofree (pqconninfooption *connoptions);
간단한PQFREEMEM
배열에는 자회사 문자열에 대한 참조가 포함되어 있기 때문에이를 수행하지 않습니다.
PQENCRYPTPASSWORDCONN
암호화 된 양식의 준비postgresql비밀번호.
char *pqencryptpasswordconn (pgconn *conn, const char *passwd, const char *user, const char *알고리즘);
이 토토 사이트은와 같은 명령을 보내려는 클라이언트 응용 프로그램에서 사용하도록 의도됩니다.ALTER 사용자 JOE 비밀번호 'PWD'
. 명령 로그, 활동 표시 등에 노출 될 수 있으므로 원래 CLEARTEXT 암호를 이러한 명령으로 보내지 않는 것이 좋습니다.
10403_10406passwd
and사용자
인수는 ClearText 비밀번호이며, 사용자의 SQL 이름입니다.알고리즘
암호를 암호화하는 데 사용할 암호화 알고리즘을 지정합니다. 현재 지원되는 알고리즘은md5
andScram-Sha-256
(on
andOFF
또한 별칭으로 인정됩니다md5
, 이전 서버 버전과의 호환성). 지원에 유의하십시오.Scram-Sha-256
에서 소개되었습니다postgresql버전 10, 이전 서버 버전에서는 올바르게 작동하지 않습니다. 만약에알고리즘
isnull
,이 함수는의 현재 값에 대해 서버를 쿼리합니다.password_encryption설정. 현재 트랜잭션이 중단되거나 연결이 다른 쿼리를 실행하는 경우 차단 될 수 있으며 실패합니다.password_encryption
전화하기 전에 자신PQENCRYPTPASSWORDCONN
알고리즘
.
반환 값은에 할당 된 문자열입니다.Malloc
. 발신자는 문자열에 탈출이 필요한 특수 문자가 포함되어 있지 않다고 가정 할 수 있습니다.PQFREEMEM
결과를 완료하면 결과를 제거합니다. 오류가 있으면 반환null
, 적절한 메시지가 연결 개체에 저장됩니다.
pqencryptpassword
MD5 암호화 된 형태의 A 준비postgresql비밀번호.
char *pqencryptpassword (const char *passwd, const char *user);
pqencryptpassword
|PQENCRYPTPASSWORDCONN
. 차이점은pqencryptpassword
12624_12665md5
항상 암호화 알고리즘으로 사용됩니다.
pqmakeemptypypgresult
공허한 구성pgresult
지정된 상태를 가진 객체.
pgresult *pqmakeemptypypgresult (pgconn *conn, execstatustype 상태);
이것은libpq의 내부 토토 사이트을 할당하고 초기화하는 내부 토토 사이트pgresult
개체. 이 함수는 반환null
메모리를 할당 할 수없는 경우. 일부 응용 프로그램은 결과 객체 (특히 오류 상태가있는 객체) 자체를 생성하는 것이 유용하다는 것을 알기 때문에 내보내기.conn
NULL이 아니며상태
오류를 나타냅니다. 지정된 연결의 현재 오류 메시지가에 복사됩니다.pgresult
. 또한 ifconn
NULL이 아닙니다. 연결에 등록 된 이벤트 절차가에 복사됩니다.pgresult
. (그들은 얻지 못합니다pgevt_resultcreate
전화하지만 참조PQFIRERESULTCREATEEVENTS
.) 참고PQCLEAR
결국 A와 마찬가지로 물체에 호출되어야합니다.pgresult
반품libpq자체.
PQFIRERESULTCREATEEVENTS
해고 apgevt_resultcreate
이벤트 (참조PostgreSQL : 문서 : 10 : 33.13. 사설 토토 사이트 시스템) 각 이벤트 절차에 대해pgresult
개체. 성공을 위해 0이 아닌 반환, 이벤트 절차가 실패하면 0이됩니다.
int pqfireresultcreateevents (pgconn *conn, pgresult *res);
10403_10406conn
인수는 이벤트 절차로 전달되지만 직접 사용되지는 않습니다. 될 수 있습니다null
이벤트 절차가 사용되지 않는 경우.
이미받은 이벤트 절차pgevt_resultcreate
또는pgevt_resultcopy
이 개체의 이벤트가 다시 시작되지 않았습니다.
이 함수가 분리되어 있다는 주된 이유pqmakeemptypypgresult
a를 만드는 것이 종종 적절하다는 것입니다.pgresult
이벤트 절차를 호출하기 전에 데이터로 채우십시오.
pqcopyresult
a의 사본 만들기pgresult
개체. 사본은 어떤 식 으로든 소스 결과에 연결되어 있지 않으며PQCLEAR
사본이 더 이상 필요하지 않은 경우 호출해야합니다. 함수가 실패하면null
반환되었습니다.
pgresult *pqcopyresult (const pgresult *src, int flags);
이것은 정확한 사본을 만들기위한 것이 아닙니다. 반환 된 결과는 항상pgres_tuples_ok
상태, 소스에 오류 메시지를 복사하지 않습니다. (그러나 명령 상태 문자열을 복사합니다.)플래그
인수는 다른 항목을 결정합니다. 약간 또는 여러 깃발입니다.pg_copyres_attrs
소스 결과의 속성 복사 (열 정의)를 지정합니다.pg_copyres_tuples
소스 결과의 튜플 복사를 지정합니다. (이것은 속성을 복사하는 것을 의미합니다.)pg_copyres_noticehooks
소스 결과를 복사하는 것을 지정합니다. hooks.pg_copyres_events
소스 결과 이벤트 복사를 지정합니다. (그러나 소스와 관련된 인스턴스 데이터는 복사되지 않습니다.)
pqsetresultattrs
a의 속성을 설정pgresult
개체.
int pqsetresultattrs (pgresult *res, int numattributes, pgresattdesc *attdescs);
제공attdescs
결과에 복사됩니다. 인 경우attdescs
포인터 ISnull
또는Numattributes
는 1보다 작고 요청이 무시되고 함수가 성공합니다. 만약에res
이미 속성이 포함되어 있으면 함수가 실패합니다. 함수가 실패하면 반환 값은 0입니다.
pqsetValue
A의 튜플 필드 값 설정pgresult
개체.
int pqsetValue (pgresult *res, int tup_num, int field_num, char *value, int len);
함수는 필요에 따라 결과의 결과의 내부 튜플 배열을 자동으로 증가시킵니다. 그러나tup_num
인수는보다 작거나 같아야합니다pqntuples
,이 함수는 한 번에 하나의 튜플을 튜플 배열 만 키울 수 있습니다. 그러나 기존 튜플의 모든 필드는 순서대로 수정할 수 있습니다.Field_num
이미 존재하면 덮어 쓸 것입니다. 만약에Len
is -1 또는value
isnull
, 필드 값은 SQL NULL 값으로 설정됩니다. 그만큼value
결과의 개인 저장소에 복사되므로 함수가 반환 된 후에는 더 이상 필요하지 않습니다. 함수가 실패하면 반환 값은 0입니다.
pqresultalloc
a 자회사 할당pgresult
개체.
void *pqresultalloc (pgresult *res, size_t nbytes);
이 함수와 함께 할당 된 모든 메모리가 해제 될 때res
가 지워집니다. 함수가 실패하면 반환 값이입니다.null
. 결과는 모든 유형의 데이터에 대해 적절하게 정렬됩니다.Malloc
.
pqlibversion
반환libpq사용 중입니다.
int pqlibversion (void);
이 토토 사이트의 결과는 런타임에 현재로드 된 LIBPQ 버전에서 특정 토토 사이트을 사용할 수 있는지 여부를 결정하는 데 사용될 수 있습니다. 예를 들어 토토 사이트을 사용하여 사용 가능한 연결 옵션을 결정할 수 있습니다.PQCONNECTDB
.
결과는 라이브러리의 주요 버전 번호에 10000을 곱하고 작은 버전 번호를 추가하여 형성됩니다. 예를 들어, 버전 10.1은 100001로 반환되고 버전 11.0은 110000으로 반환됩니다.
주요 버전 10 이전,postgresql처음 두 부분이 함께 주요 버전을 나타내는 3 부 버전 번호를 사용했습니다. 해당 버전의 경우pqlibversion
각 부분에 대해 두 자리를 사용합니다. 예를 들어 버전 9.1.5는 90105로 반환되고 버전 9.2.0은 90200으로 반환됩니다.
따라서 토토 사이트 호환성을 결정하기 위해 응용 프로그램은의 결과를 나누어야합니다.pqlibversion
논리적 주요 버전 번호를 결정하려면 10000이 아닙니다. 모든 릴리스 시리즈에서는 마지막 두 자리 숫자 만 사소한 릴리스 (버그 고정 릴리스)마다 다릅니다.
이 함수는postgresql버전 9.1이므로 이전 버전에서 필요한 기능을 감지하는 데 사용할 수 없습니다.