데이터베이스 서버에 대한 연결이 성공적으로 이루어지면 설정된 경우 여기에 설명된 함수는 SQL을 수행하는 데 사용됩니다. 쿼리 및 토토 꽁 머니.
PQexec다음에 명령을 제출하세요
        서버에 접속하고 결과를 기다립니다.
PGresult *PQexec(PGconn *conn,
                 const char *쿼리);
        a를 반환토토 꽁 머니.PGresult포인터
        또는 NULL 포인터일 수도 있습니다. NULL이 아닌 포인터는
        메모리가 부족한 경우를 제외하고는 일반적으로 반환됩니다.
        토토 꽁 머니을 보낼 수 없는 등의 심각한 오류
        백엔드. NULL이 반환되면 a처럼 처리되어야 합니다.PGRES_FATAL_ERROR결과. 사용PQerrorMessage더 많이 얻으려면
        오류에 대한 정보입니다.
그PGresult구조
    백엔드에서 반환된 결과를 캡슐화토토 꽁 머니.libpq응용 프로그램 프로그래머는 조심해야 토토 꽁 머니
    유지하기 위해PGresult추상화. 아래 접근자 기능을 사용하여
    내용PGresult. 피하다
    의 필드를 직접 참조토토 꽁 머니.PGresult주제이기 때문에 구조
    앞으로는 변할 것이다. (시작부터)포스트그레SQL6.4, 구조체의 정의PGresult제공되지도 않습니다libpq-fe.h. 오래된 코드가 있는 경우
    액세스PGresult필드를 직접적으로,
    포함하면 계속 사용할 수 있습니다.libpq-int.h또한 문제를 해결하는 것이 좋습니다.
    코드는 곧 제공됩니다.)
PQresultStatus다음을 반환합니다.
        명령의 결과 상태입니다.
ExecStatusType PQresultStatus(const PGresult *res)
PQresultStatus반환 가능
        다음 값 중 하나:
PGRES_EMPTY_QUERY-- 백엔드로 전송된 문자열이 비어 있습니다.
PGRES_COMMAND_OK-- no를 반환하는 토토 꽁 머니이 성공적으로 완료되었습니다. 데이터
PGRES_TUPLES_OK-- 쿼리가 성공적으로 토토 꽁 머니되었습니다.
PGRES_COPY_OUT-- 복사 (서버에서) 데이터 전송이 시작되었습니다.
PGRES_COPY_IN-- 복사 (서버로) 데이터 전송이 시작되었습니다.
PGRES_BAD_RESPONSE-- 서버의 응답을 이해할 수 없습니다.
PGRES_NONFATAL_ERROR
PGRES_FATAL_ERROR
결과 상태가 다음과 같은 경우PGRES_TUPLES_OK, 루틴 설명 아래는 에서 반환된 행을 검색하는 데 사용할 수 있습니다. 쿼리. 검색하는 데 발생하는 SELECT 토토 꽁 머니에 유의하세요. 0개의 행이 여전히 표시됩니다.PGRES_TUPLES_OK. PGRES_COMMAND_OK다음을 수행할 수 있는 명령용입니다. 행(INSERT, UPDATE 등)을 반환하지 않습니다. 의 응답PGRES_EMPTY_QUERY종종 노출 클라이언트 소프트웨어의 버그입니다.
PQresStatus변환합니다
        PQresultStatus가 문자열로 반환한 열거형
        상태 코드를 설명하는 상수입니다.
char *PQresStatus(ExecStatusType 상태);
PQresultErrorMessage쿼리와 관련된 오류 메시지를 반환토토 꽁 머니.
        오류가 없으면 빈 문자열입니다.
char *PQresultErrorMessage(const PGresult *res);
즉시 다음PQexec또는PQgetResult전화,PQerrorMessage(연결 시)는
        와 동일한 문자열을 반환토토 꽁 머니.PQresultErrorMessage(결과에 대해).
        그러나 aPGresult유지됩니다
        오류 메시지는 파괴될 때까지 표시되지만 연결은
        후속 작업이 완료되면 오류 메시지가 변경됩니다.
        완료. 사용PQresultErrorMessage원할 때
        특정과 관련된 상태를 알 수 있습니다.PGresult; 사용PQerrorMessage당신이 알고 싶을 때
        연결에 대한 최신 작업의 상태입니다.
PQclear저장공간 확보
        와 연관됨PGresult.
        모든 쿼리 결과는 다음을 통해 해제되어야 합니다.PQclear더 이상 필요하지 않은 경우.
void PQclear(PQresult *res);
당신은 다음을 유지할 수 있습니다.PGresult필요한 한 계속해서 반대하십시오. 그것은 가지 않는다
        새 쿼리를 토토 꽁 머니하거나 쿼리를 닫더라도
        연결. 이를 제거하려면 전화해야 합니다.PQclear. 이를 수행하지 않으면 결과가 발생토토 꽁 머니.
        프런트엔드 애플리케이션에서 메모리 누수가 발생했습니다.
PQmakeEmptyPGresult빈 공간을 구성토토 꽁 머니PGresult주어진 상태의 개체입니다.
PGresult* PQmakeEmptyPGresult(PGconn *conn, ExecStatusType 상태);
이것은libpq의
        빈 공간을 할당하고 초기화하는 내부 루틴PGresult객체. 수출된다
        일부 응용 프로그램에서는 결과를 생성하는 것이 유용하다고 생각하기 때문에
        개체(특히 오류 상태의 개체)
        스스로. 만일콘아님
        NULL 및 상태는 오류를 나타냅니다. 연결의
        현재 errorMessage는에 복사됩니다.PGresult.참고하세요PQclear결국 호출되어야 함
        a와 마찬가지로 객체PGresult반환자:libpq그 자체.
PQescapeString이스케이프
    SQL 쿼리 내에서 사용할 문자열입니다.
size_t PQescapeString(char *to, const char *from, size_t 길이);
다음에서 받은 문자열을 포함하려는 경우 신뢰할 수 없는 출처(예: 무작위 사용자가 입력한 값), SQL에 직접 포함할 수 없습니다. 보안상의 이유로 문의합니다. 대신에 인용을 해야 합니다. SQL에서 다르게 해석되는 특수 문자 파서.
PQescapeString이것을 수행토토 꽁 머니
    운영.from다음을 가리킵니다.
    이스케이프할 문자열의 첫 번째 문자길이매개변수는
    이 문자열의 문자 수(종료 0바이트는
    필요하지도 않고 계산되지도 않음).에다음을 수행할 수 있는 버퍼를 가리켜야 합니다.
    값의 두 배보다 최소한 하나 이상의 문자를 보유하십시오.길이, 그렇지 않으면 동작
    정의되지 않았습니다. 에게 전화PQescapeString다음의 이스케이프 버전을 작성합니다.from문자열을에버퍼, 특수 교체
    해를 끼치 지 않도록 문자를 추가하고
    0바이트를 종료토토 꽁 머니. 둘러싸야 하는 작은따옴표포스트그레SQL문자열 리터럴은 다음과 같습니다.
    결과 문자열의 일부가 아닙니다.
PQescapeString반환
    쓴 문자 수에, 종료 0바이트를 포함하지 않음.
    다음과 같은 경우 동작이 정의되지 않습니다.에그리고from문자열이 겹칩니다.
PQescapeBytea바이너리를 이스케이프토토 꽁 머니.
    문자열(바이테아유형) SQL 내에서 사용
    쿼리.
부호 없는 문자 *PQescapeBytea(부호 없는 문자 *from,
                                         size_t from_length,
                                         size_t *to_length);
    확실함ASCII문자반드시탈출(하지만
    모든 문자5월수
    이스케이프됨) a의 일부로 사용되는 경우바이테아an의 문자열 리터럴SQL성명. 일반적으로 문자를 이스케이프하려면 문자가 변환됩니다.
    십진수와 동일한 세 자리 8진수로ASCII값, 앞에는
    백슬래시 두 개. 작은따옴표(') 및 백슬래시(\)
    문자에는 특별한 대체 이스케이프 시퀀스가 있습니다. 참조사용자 가이드더 많은 정보를 원하시면.PQescapeBytea이것을 수행합니다
    최소한의 필수 문자만 이스케이프 처리합니다.
그from매개변수는 다음을 가리킵니다.
    이스케이프할 문자열의 첫 번째 문자from_length매개변수
    이 이진 문자열의 문자 수를 반영합니다(a
    0바이트를 종료하는 것은 필요하지도 계산되지도 않습니다.)to_length매개변수는 다음을 가리켜야 합니다.
    결과 이스케이프 문자열을 보유하는 데 적합한 버퍼로
    길이. 결과 문자열 길이에는 다음이 포함되지 않습니다.
    결과의 0바이트를 종료합니다.
PQescapeBytea반환
    이스케이프 버전의from매개변수 바이너리 문자열을 호출자 제공 버퍼로 변환합니다. 는
    반환 문자열에는 모든 특수 문자가 대체되어
    PostgreSQL 문자열 리터럴로 적절하게 처리될 수 있습니다.
    파서 및바이테아입력 함수. 에이
    0바이트 종료도 추가됩니다. 작은따옴표
    PostgreSQL 문자열 리터럴을 둘러싸야 합니다.
    결과 문자열입니다.
PQntuples다음을 반환합니다.
        쿼리 결과의 튜플(행) 수입니다.
int PQntuples(const PGresult *res);
PQn필드다음을 반환합니다.
        쿼리의 각 행에 있는 필드(열) 수
        결과.
int PQnfields(const PGresult *res);
PQfname필드를 반환토토 꽁 머니.
        (열) 주어진 필드 인덱스와 연관된 이름입니다. 필드
        인덱스는 0부터 시작토토 꽁 머니.
char *PQfname(const PGresult *res,
                    int field_index);
      PQf번호다음을 반환합니다.
        해당 필드와 연관된 필드(열) 인덱스
        이름.
int PQfnumber(const PGresult *res,
              const char *필드_이름);
        주어진 이름이 일치하지 않는 경우 -1이 반환됩니다. 필드.
PQftype필드를 반환토토 꽁 머니.
        주어진 필드 인덱스와 연관된 유형입니다. 정수
        반환된 것은 해당 유형의 내부 코딩입니다. 필드 인덱스
        0부터 시작하세요.
Oid PQftype(const PGresult *res,
            int field_index);
        시스템 테이블을 쿼리할 수 있습니다.pg_type이름과 속성을 얻으려면 다양한 데이터 유형.OID24517_24571src/include/catalog/pg_type.h소스에서 나무.
PQfmod다음을 반환합니다.
        연관된 필드의 유형별 수정 데이터
        주어진 필드 인덱스로. 필드 인덱스는 0부터 시작합니다.
int PQfmod(const PGresult *res,
           int field_index);
      PQfsize크기를 반환토토 꽁 머니.
        해당 필드와 연관된 필드의 바이트 단위
        색인. 필드 인덱스는 0부터 시작토토 꽁 머니.
int PQfsize(const PGresult *res,
            int field_index);
        PQfsize공간을 반환토토 꽁 머니.
        데이터베이스 튜플에서 이 필드에 할당됩니다.
        서버의 이진 표현 크기를 의미토토 꽁 머니.
        데이터 유형. 필드가 가변적이면 -1이 반환됩니다.
        크기.
PQbinaryTuples1을 반환합니다.
        PGresult에 바이너리 튜플 데이터가 포함되어 있으면 0입니다.
        ASCII 데이터가 포함되어 있습니다.
int PQbinaryTuples(const PGresult *res);
현재 바이너리 튜플 데이터는 다음을 통해서만 반환될 수 있습니다. 바이너리 커서에서 데이터를 추출하는 쿼리입니다.
PQgetvalue다음을 반환합니다.
        a의 한 튜플(행)에 대한 단일 필드(열) 값PGresult. 튜플과 필드
        인덱스는 0부터 시작토토 꽁 머니.
char* PQgetvalue(const PGresult *res,
                 정수 tup_num,
                 int field_num);
        대부분의 쿼리에서 반환된 값은PQgetvalueNull 종료 문자입니다.
        속성 값의 문자열 표현입니다. 하지만 만일PQbinaryTuples()는 1이고,
        에서 반환된 값PQgetvalue은 내부 유형의 바이너리 표현입니다.
        백엔드 서버의 형식(크기는 포함되지 않음)
        단어(필드가 가변 길이인 경우). 그 다음은
        데이터를 캐스팅하고 변환하는 것은 프로그래머의 책임입니다.
        올바른 C 유형. 에서 반환된 포인터PQgetvalue일부인 저장소를 가리킵니다.
        의PGresult구조. 하나
        수정해서는 안 되며 명시적으로 복사해야 토토 꽁 머니.
        그 가치가 만료된 이후에 사용될 경우 다른 저장소에 귀속됩니다.
        일생 동안PGresult구조 자체.
PQgetisnull필드를 테스트토토 꽁 머니
        NULL 항목의 경우. 튜플 및 필드 인덱스는 0부터 시작토토 꽁 머니.
int PQgetisnull(const PGresult *res,
                정수 tup_num,
                int field_num);
        이 함수는 필드에 NULL이 포함되어 있으면 1, 0을 반환합니다.
        null이 아닌 값이 포함된 경우. (참고하세요PQgetvalue빈 문자열을 반환합니다.
        NULL 필드의 경우 널 포인터가 아닙니다.)
PQgetlength다음을 반환합니다.
        필드(속성) 값의 길이(바이트)입니다. 튜플과
        필드 인덱스는 0부터 시작합니다.
int PQgetlength(const PGresult *res,
                정수 tup_num,
                int field_num);
        이것은 특정 데이터에 대한 실제 데이터 길이입니다
        값, 즉 가 가리키는 객체의 크기입니다.PQgetvalue. 참고하세요
        문자로 표현된 값, 이 크기는 거의 관련이 없습니다.
        보고된 바이너리 크기로PQfsize.
PQprint모든 내용을 인쇄토토 꽁 머니.
        튜플 및 선택적으로 속성 이름
        지정된 출력 스트림.
void PQprint(FILE* fout, /* 출력 스트림 */
             const PGresult *res,
             const PQprintOpt *po);
구조체 
    pqbool 헤더;      /* 출력 필드 제목과 행 개수를 인쇄합니다 */
    pqbool 정렬;       /* 필드 채우기 채우기 */
    pqbool 표준;    /* 오래된 뇌사 형식 */
    pqbool html3;       /* HTML 테이블 출력 */
    pqbool 확장;    /* 테이블 확장 */
    pqbool 호출기;       /* 필요한 경우 출력을 위해 호출기를 사용합니다 */
    char *fieldSep;   /* 필드 구분자 */
    char *tableOpt;   /* HTML에 삽입테이블 ...*/
    문자 *캡션;    /* HTML캡션*/
    char **필드명; /* null로 끝나는 대체 필드 이름 배열 */
 PQprintOpt;
        이 기능은 이전에 다음에서 사용되었습니다.psql질의 결과를 인쇄하려면, 하지만 이것은 더 이상 그렇지 않으며 이 기능도 더 이상 작동하지 않습니다. 적극적으로 지원합니다.
PQcmd상태다음을 반환합니다.
        생성된 SQL 명령의 명령 상태 문자열PGresult.
char * PQcmdStatus(const PGresult *res);
PQcmdTuples다음을 반환합니다.
        SQL 명령의 영향을 받은 행 수입니다.
char * PQcmdTuples(const PGresult *res);
만약SQL토토 꽁 머니 생성된 것은PGresult이었음 INSERT, UPDATE 또는 DELETE, 다음을 포함하는 문자열을 반환합니다. 영향을 받는 행 수 명령이 무엇이든 있었다면 그렇지 않으면 빈 문자열을 반환합니다.
PQoid값다음을 반환합니다.
        삽입된 행의 객체 ID(SQL명령은 다음을 삽입한 INSERT였습니다.
        OID가 있는 테이블에 정확히 하나의 행이 있습니다. 그렇지 않으면,
        반품InvalidOid.
Oid PQoidValue(const PGresult *res);
유형오이드그리고 상수InvalidOid다음과 같이 정의됩니다. 다음을 포함합니다.libpq헤더 파일. 둘 다 정수 유형입니다.
PQoidStatus다음을 반환합니다.
        삽입된 행의 객체 ID가 있는 문자열(SQL명령은
        삽입. (문자열은 다음과 같습니다.0if
        INSERT가 정확히 하나의 행을 삽입하지 않았거나 대상이
        테이블에는 OID가 없습니다.) 명령이
        INSERT, 빈 문자열을 반환합니다.
char * PQoidStatus(const PGresult *res);
이 기능은 다음을 위해 더 이상 사용되지 않습니다.PQoid값그리고 스레드로부터 안전하지 않습니다.