이 문서는 지원되지 않는 Postgre토토 사이트 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.Postgre스포츠 토토 : 문서 : 17 : 34.5. 동적 스포츠 토토버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

33.5. 동적 토토 사이트

많은 경우에 특정 토토 사이트 문은 응용 프로그램이 실행되어야 하는 것은 응용 프로그램이 실행되는 시점에 알려져 있습니다. 가 쓰여 있습니다. 그러나 어떤 경우에는 토토 사이트 문이 다음과 같습니다. 런타임에 구성되거나 외부 소스에서 제공됩니다. 이들에서는 토토 사이트 문을 C에 직접 포함할 수 없는 경우 소스 코드를 호출할 수 있는 기능이 있습니다. 문자열로 제공하는 임의의 토토 사이트 문 변수.

33.5.1. 명령문 실행 결과 세트 없이

임의의 토토 사이트 문을 실행하는 가장 간단한 방법은 다음과 같습니다. 명령을 사용하십시오즉시 실행. 에 대한 예:

EXEC 토토 사이트 시작 선언 섹션;
const char *stmt = "CREATE TABLE test1 (...);";
EXEC 토토 사이트 END 선언 섹션;

EXEC 토토 사이트 실행 즉시 :stmt;

즉시 실행다음 용도로 사용할 수 있습니다. 결과 세트를 반환하지 않는 토토 사이트 문(예: DDL,삽입, 업데이트, 삭제). 당신 데이터를 검색하는 문을 실행할 수 없습니다(예:선택) 이쪽으로요. 다음 섹션에서는 방법을 설명합니다. 그러려고.

33.5.2. 입력으로 명령문 실행 매개변수

임의의 토토 사이트 문을 실행하는 더 강력한 방법은 다음과 같습니다. 한 번 준비하고 준비된 문을 다음과 같이 실행합니다. 원하는 대로 자주. 일반전형도 준비 가능 명령문 버전을 지정한 다음 해당 버전의 특정 버전을 실행합니다. 매개변수를 대체하여 명세서를 준비할 때 작성하세요. 나중에 매개변수를 대체할 위치에 물음표를 표시합니다. 예를 들면:

EXEC 토토 사이트 시작 선언 섹션;
const char *stmt = "test1 VALUES(?, ?)에 삽입;";
EXEC 토토 사이트 END 선언 섹션;

EXEC 토토 사이트 준비 mystmt FROM :stmt;
 ...
EXEC 토토 사이트 EXECUTE mystmt USING 42, 'foobar';

준비된 명령문이 더 이상 필요하지 않을 때, 할당을 취소해야 합니다.

EXEC 토토 사이트 DEALLOCATE PREPARE이름;

33.5.3. 다음을 사용하여 명령문 실행 결과 집합

단일 결과 행으로 토토 사이트 문을 실행하려면,실행사용할 수 있습니다. 저장하려면 결과에 추가하세요.INTO절.

EXEC 토토 사이트 시작 선언 섹션;
const char *stmt = "test1에서 a, b, c를 선택하세요. WHERE a  ?";
int v1, v2;
VARCHAR v3[50];
EXEC 토토 사이트 END 선언 섹션;

EXEC 토토 사이트 준비 mystmt FROM :stmt;
 ...
EXEC 토토 사이트 EXECUTE mystmt INTO :v1, :v2, :v3 USING 37;

실행명령은 다음을 가질 수 있습니다.INTO절, a사용 중절, 둘 다 또는 둘 다 아님.

쿼리가 하나 이상의 결과 행을 반환할 것으로 예상되는 경우, 다음 예와 같이 커서를 사용해야 합니다. (참조섹션 33.3.2커서에 대한 자세한 내용을 확인하세요.)

EXEC 토토 사이트 시작 선언 섹션;
char dbaname[128];
char 데이터이름[128];
char *stmt = "dbaname, d.datname으로 u.usename 선택"
             " pg_database d, pg_user u "에서
             " d.datdba = u.usesysid";
EXEC 토토 사이트 END 선언 섹션;

EXEC 토토 사이트 CONNECT TO testdb AS con1 USER testuser;

EXEC 토토 사이트 준비 stmt1 FROM :stmt;

EXEC 토토 사이트 DECLARE 커서1 CURSOR FOR stmt1;
EXEC 토토 사이트 OPEN 커서1;

EXEC 토토 사이트을 찾을 수 없을 때 중단하십시오.

동안 (1)

    EXEC 토토 사이트 FETCH 커서1 INTO :dbaname,:datname;
    printf("dbaname=%s, datname=%s\n", dbaname, datname);

EXEC 토토 사이트 CLOSE 커서1;

EXEC 토토 사이트 커밋;
EXEC 토토 사이트 모두 연결 해제;