이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다현재버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

스포츠 토토 실행 기능

데이터베이스 서버에 대한 연결이 성공적으로 성공하면 여기에 설명 된 기능은 SQL을 수행하는 데 사용됩니다. 스포츠 토토 및 명령.

  • PQEXEC스포츠 토토 제출Postgres기다리고 있습니다 결과.

    pgresult *pqexec (pgconn *conn,
                     const char *query);
    pgresult 포인터 또는 널 포인터를 반환합니다. 에이 비 널 포인터는 일반적으로 메모리를 제외하고 반환됩니다 스포츠 토토를 백엔드. 널이 반환되면 pgres_fatal_error 결과. pqerrormessage를 사용하여 더 많은 것을 얻으십시오 오류에 대한 정보.

thepgresult구조가 캡슐화됩니다 백엔드에서 반환 된 스포츠 토토 결과.libpq응용 프로그램 프로그래머가 조심해야합니다 pgresult 추상화를 유지하십시오. 아래 액세서 기능을 사용하십시오 pgresult의 내용에 도달합니다. 직접 참조하지 마십시오 fields of the PGresult structure because they are subject to change 미래에. (시작Postgres릴리스 6.4, 구조의 정의 pgresult는 Libpq-fe.h에서도 제공되지 않습니다. 오래된 코드가있는 경우 pgresult 필드에 직접 액세스하면 계속 사용할 수 있습니다. libpq-int.h도 포함하지만 코드를 수정하는 것이 좋습니다. 곧.)

  • pqresultstatus결과를 반환합니다 쿼리 상태. pqresultstatus는 그 중 하나를 반환 할 수 있습니다 다음 값 :

    pgres_empty_query,
    pgres_command_ok, / * 스포츠 토토는 데이터를 반환하는 명령이었다 * /
    pgres_tuples_ok, / * 스포츠 토토는 튜플을 성공적으로 반환했습니다 * /
    pgres_copy_out, / * 복사 아웃 (서버에서) 데이터 전송 시작 ​​* /
    pgres_copy_in, / * 복사 (서버로) 데이터 전송 시작 ​​* /
    pgres_bad_response, / * 예기치 않은 응답이 접수되었습니다 * /
    pgres_nonfatal_error,
    pgres_fatal_error
    결과 상태가 pgres_tuples_ok 인 경우 루틴입니다 아래에 설명 된 것은 질문. 제로 튜플을 검색하는 선택이 있습니다. 여전히 pgres_tuples_ok를 보여줍니다. pgres_command_ok는 명령을위한 것입니다 튜플을 반환 할 수 없습니다.
  • PQRESULTERRORMESSAGE반환합니다 스포츠 토토와 관련된 오류 메시지 또는 빈 문자열 오류가 없었습니다.

    const char *pqresulterrormessage (pgresult *res);
    PQEXEC 또는 PQGETRESULT 호출 직후, 즉 PQERRORMESSAGE (연결 중)는 동일한 문자열을 반환합니다. PQRESULTERRORMESSAGE (결과에서). 그러나 pgresult는 의지합니다 연결은 파괴 될 때까지 오류 메시지를 유지합니다 후속 작업이 완료되면 오류 메시지가 변경됩니다. 사용 PQRESULTERRORMESAGE 관련 상태를 알고 싶을 때 특정 pgresult로; 원하는 경우 pqerrormessage를 사용하십시오 연결에서 최신 작업의 상태를 알고 있습니다.
  • pqntuples번호를 반환합니다 스포츠 토토 결과의 튜플 (인스턴스)

    int pqntuples (pgresult *res);
  • pqnfields번호를 반환합니다 스포츠 토토 결과의 각 튜플에서 필드 (속성)

    int pqnfields (pgresult *res);
  • pqbinaryTuples1 인 경우 1을 반환합니다 pgresult에는 이진 튜플 데이터가 포함되어 있습니다. 데이터.

    int pqbinaryTuples (pgresult *res);
    현재, 바이너리 튜플 데이터는 쿼리로만 반환 할 수 있습니다. a에서 데이터를 추출합니다.BINAGE커서.
  • pqfname필드를 반환합니다 (속성) 주어진 필드 인덱스와 관련된 이름. 필드 지수는 0에서 시작합니다.

    char *pqfname (pgresult *res,
                  int field_index);
  • pqfnumber필드를 반환합니다 (속성) 주어진 필드 이름과 관련된 색인.

    int pqfnumber (pgresult *res,
                  char* field_name);

    9621_9685

  • pqftype필드 유형을 반환합니다 주어진 필드 인덱스와 관련이 있습니다. 반환 된 정수는입니다 유형의 내부 코딩. 현장 지수는 0에서 시작합니다.

    oid pqftype (pgresult *res,
                int field_num);
  • pqfsize크기를 바이트로 반환합니다 주어진 필드 인덱스와 관련된 필드의. 필드 지수는 0에서 시작합니다.

    int pqfsize (pgresult *res,
                int field_index);
    pqfsize이 필드에 할당 된 공간을 반환합니다. 데이터베이스 튜플, 즉 서버 바이너리의 크기 데이터 유형의 표현. 필드가 있으면 -1이 반환됩니다 가변 크기.
  • pqfmod유형-특정을 반환합니다 주어진 필드와 관련된 필드의 수정 데이터 색인. 현장 지수는 0에서 시작합니다.

    int pqfmod (pgresult *res,
               int field_index);
  • pqgetValue단일 필드를 반환합니다 (속성) pgresult의 한 튜플 값. 튜플과 필드 지수는 0에서 시작합니다.

    char * pqgetValue (pgresult * res,
                     int tup_num,
                     int field_num);
    대부분의 쿼리의 경우 pqgetValue가 반환 한 값은 속성 값의 null-terminated ascii 문자열 표현. 그러나 pqbinaryTuples ()가 참이면 pqgetValue에 의해 반환 된 값 내부 형식의 유형의 이진 표현입니다. 백엔드 서버 (필드 인 경우 크기 단어를 포함하지 않음 가변 길이)입니다. 그런 다음 프로그래머의 책임입니다 데이터를 올바른 C 유형으로 캐스트하고 변환하십시오. 포인터 PQGetValue 포인트에 의해 반환 된 스토리지에 반환 pgresult 구조. 하나는 그것을 수정해서는 안됩니다 사용하려면 값을 다른 스토리지에 명시 적으로 복사하십시오. pgresult 구조 자체의 수명을 지나서.
  • pqgetLength길이를 반환합니다 바이트의 필드 (속성). 튜플 및 현장 지수는 시작합니다 0.

    int pqgetlength (pgresult *res,
                    int tup_num,
                    int field_num);
    이것은 특정 데이터 값의 실제 데이터 길이입니다. 이것이 PQGetValue가 가리키는 물체의 크기입니다. 주목하십시오 ascii-represented 값의 경우이 크기는 PQFSize에 의해보고 된 이진 크기.
  • PQGETISNULL필드를 테스트합니다 널 입력. 튜플 및 현장 지수는 0에서 시작합니다.

    int pqgetisnull (pgresult *res,
                    int tup_num,
                    int field_num);
    이 함수는 필드에 null이 포함 된 경우 1, 0이면 0을 반환합니다. 널 값이 아닌 값이 포함되어 있습니다. (pqgetValue는 an을 반환합니다 널 필드를위한 널 포인터가 아닌 빈 문자열.)
  • pqcmdstatus명령을 반환합니다 생성 된 SQL 명령의 상태 문자열 pgresult.

    char *pqcmdstatus (pgresult *res);
  • pqcmdtuples번호를 반환합니다 SQL 명령에 의해 영향을받는 줄.

    const char *pqcmdtuples (pgresult *res);
    pgresult를 생성 한 SQL 명령이 삽입 된 경우 업데이트 또는 삭제, 이것은 수를 포함하는 문자열을 반환합니다. 줄에 영향을 받았습니다. 명령이 다른 것이라면 반환합니다 빈 문자열.
  • pqoidstatus문자열을 다시 반환합니다 SQL 명령이 끼워 넣다. 그렇지 않으면 빈 문자열을 반환합니다.

    char * pqoidstatus (pgresult * res);
  • pqprint모든 튜플을 인쇄합니다 그리고 선택적으로 속성은 지정된 출력에 이름을 지정합니다 개울.

    void pqprint (파일* fout, /* 출력 스트림* /
                 pgresult* res,
                 pqprintopt* po);
    
    struct _pqprintopt
    
                    PQBOOL 헤더;      / * 출력 필드 제목 및 행 카운트 인쇄 */
                    pqbool 정렬;       / * 채우기 필드 정렬 */
                    PQBOOL 표준;    / * Old Brain Dead 형식 */
                    PQBOOL HTML3;       / * 출력 HTML 테이블 */
                    PQBOOL 확장;    / * 테이블 확장 */
                    PQBOOL 호출기;       / * 필요한 경우 출력을 위해 호출기를 사용하십시오 */
                    char *fieldsep;   / * 필드 분리기 */
                    char *tableopt;   / * html에 삽입 <테이블 ... */
                    char *캡션;    / * html <caption */
                    char ** fieldname; / * NULL 교체 필드 이름의 배열 */
            ;
    이 함수는 pqprinttuples ()를 대체하기위한 것입니다 이제는 쓸모가 없습니다. 그만큼PSQLprogram uses pqprint () 쿼리 결과를 표시하려면
  • pqprinttuples모든 것을 인쇄합니다 튜플 및 선택적으로 속성 이름은 지정된 이름입니다 출력 스트림.

    void pqprinttuples (pgresult* res,
                       파일* fout, /* 출력 스트림* /
                       int printattName,/* 인쇄 속성 이름 여부*/
                       int terseoutput, /* delimiter bar 여부?* /
                       int 너비);      /* 열의 너비, 0*/ 인 경우 가변 너비
  • PQDISPLAYTUPLES모든 것을 인쇄합니다 튜플 및 선택적으로 속성 이름은 지정된 이름입니다 출력 스트림.

    void pqdisplaytuples (pgresult* res,
                         파일* fout, /* 출력 스트림* /
                         int fillalign, / * 열 정렬을위한 공간 채우기 * /
                         const char *fieldsep, / *필드 분리기 * /
                         int printheader, /* 디스플레이 헤더? */
                         int quiet);           / * 끝에서 행 카운트의 인쇄 억제 */
    pqdisplaytuples ()는 pqprinttuples ()를 대체하기위한 것입니다. 그리고 결국 pqprint ()에 의해 대체되었습니다.
  • PQCLEAR스토리지를 해제합니다 pgresult와 관련이 있습니다. 모든 쿼리 결과가 있어야합니다 더 이상 필요하지 않을 때 pqclear를 통해 해방됩니다.

    void pqclear (pqresult *res);
    필요한만큼 Pgresult 객체를 주위에 유지할 수 있습니다. 그것; 새 쿼리를 발행 할 때 또는 심지어 연결을 닫으십시오. 제거하려면 PQCLEAR로 전화해야합니다. 이렇게하지 않으면 프론트 엔드에서 메모리 누출이 발생합니다. 애플리케이션.
  • pqmakeemptypypgresult구성 an 주어진 상태를 가진 빈 pgresult 객체.

    pgresult * pqmakeemptypypygresult (pgconn * conn, execstatustype status);
    이것은 LIBPQ의 내부 루틴을 할당하고 초기화하는 내부 루틴입니다 빈 pgresult 물체. 일부 응용 프로그램이므로 수출됩니다 결과 객체 (특히 객체)를 생성하는 것이 유용하다고 생각합니다 오류 상태) 자체. Conn이 Null이 아닌 상태 인 경우 오류가 표시되고 연결의 현재 errormessage가 복사됩니다 pgresult로. PQCLEAR는 결국 호출되어야합니다 객체는 libpq 자체에 의해 반환 된 pgresult와 마찬가지로.