이 문서는 지원되지 않는 버전의 Postgre범퍼카 토토을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다Postgre윈 범퍼카 토토 : 문서 : 17 : 34.3. 실행 윈 범퍼카 토토 명령버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

33.3. 실행 범퍼카 토토 명령

임베디드 범퍼카 토토 내에서 모든 범퍼카 토토 명령을 실행할 수 있습니다. 애플리케이션. 아래는 그렇게하는 방법의 몇 가지 예입니다.

33.3.1. 범퍼카 토토 문 실행

테이블 만들기 :

Exec 범퍼카 토토 생성 테이블 foo (번호 정수, ASCII char (16));
exec 범퍼카 토토 foo (번호)에서 고유 한 색인 Num1을 만듭니다.
Exec 범퍼카 토토 Commit;

행 삽입 :

exec 범퍼카 토토 insert info (숫자, ascii) 값 (9999, 'doodad');
Exec 범퍼카 토토 Commit;

행 삭제 :

exec sql 삭제 foo에서 숫자 = 9999;
Exec 범퍼카 토토 Commit;

업데이트 :

Exec 범퍼카 토토 업데이트 foo
    set ascii = 'foobar'
    여기서 번호 = 9999;
Exec 범퍼카 토토 Commit;

select단일을 반환하는 진술 결과 행도를 사용하여 실행할 수 있습니다.exec 범퍼카 토토직접. 여러 행으로 결과 세트를 처리하려면 An 응용 프로그램은 커서를 사용해야합니다. 보다섹션 33.3.2아래. (A로 특별한 경우, 응용 프로그램은 한 번에 여러 행을 다시 가져올 수 있습니다. 배열 호스트 변수; 보다섹션 33.4.4.3.1.)

단일 줄 선택 :

exec 범퍼카 토토 foo를 선택하십시오 : aScii = 'doodad';에서 table1에서 foobar.

또한 구성 매개 변수를 검색 할 수 있습니다.show명령 :

exec sql show search_path : var;

양식의 토큰:뭔가are호스트 변수, 즉, C 프로그램의 변수를 나타냅니다. 그들은에 설명되어 있습니다.Postgre롤 토토 : 문서 : 9.3 : 호스트 변수 사용.

33.3.2. 커서 사용

여러 행을 고정하는 결과 세트를 검색하려면 응용 프로그램 커서를 선언하고 각 행을 커서에서 가져와야합니다. 그만큼 커서를 사용하는 단계는 다음과 같습니다. 커서를 선언하고 열고, 열고, 커서에서 행을 가져 와서 반복하고 마침내 닫습니다.

커서 사용 선택 :

exec 범퍼카 토토 선언 foo_bar 커서
    foo에서 번호, ASCII를 선택하십시오
    ASCII에 의한 주문;
Exec 범퍼카 토토 Open foo_bar;
Exec 범퍼카 토토 Fetch foo_bar가 들어갑니다 : Foobar, Doodad;
...
Exec 범퍼카 토토 Close foo_bar;
Exec 범퍼카 토토 Commit;

커서 선언에 대한 자세한 내용은 참조선언,fetchforfetch명령 세부 사항.

참고 :ECPG선언명령 실제로 명세서가 postgre범퍼카 토토로 전송되지 않습니다. 백엔드. 커서는 백엔드에서 열립니다 (백엔드 사용선언명령) 시점에서Open명령이 실행됩니다.

33.3.3. 거래 관리

기본 모드에서는 진술이 만 커밋됩니다.Exec 범퍼카 토토 Commit발행됩니다. 내장 범퍼카 토토 인터페이스는 트랜잭션의 자동 커밋도 지원합니다 (유사libpq행동)를 통해-t명령 줄 옵션ECPG(참조ECPG) 또는를 통해exec 범퍼카 토토은 autocommit을 on로 설정했습니다.진술. 자동 커밋 모드에서 각각 명령이 명시 적 안에 있지 않으면 자동으로 커밋됩니다. 거래 블록. 이 모드는를 사용하여 명시 적으로 꺼질 수 있습니다.Exec 범퍼카 토토 SET AutoCommit.

다음 거래 관리 명령을 사용할 수 있습니다.

Exec 범퍼카 토토 Commit

진행중인 거래를 커밋하십시오.

Exec 범퍼카 토토 롤백

진행중인 트랜잭션 롤백.

Exec 범퍼카 토토 Set autocommit on

자동 커밋 모드 활성화.

자동 커밋 설정

자동 커밋 모드 비활성화. 이것은 기본입니다.

33.3.4. 준비된 진술

범퍼카 토토 문으로 전달 될 값이 알려지지 않은 경우 컴파일 시점에 또는 같은 진술이 많이 사용됩니다. 시간, 준비된 진술은 유용 할 수 있습니다.

명령문은 명령을 사용하여 준비됩니다준비. 아직 알려지지 않은 값의 경우 사용하십시오 자리 표시 자"?":

Exec 범퍼카 토토 "OID 선택, OID =?"

명령문이 단일 행을 반환하면 응용 프로그램이 전화 할 수 있습니다execute이후준비진술을 실행하고 공급합니다 A를 가진 자리 표시자를위한 실제 값사용절 :

exec 범퍼카 토토 STMT1을 실행 : DBOID, : DBNAME 사용 1;

명령문이 여러 행을 반환하면 응용 프로그램이 Cursor는 준비된 진술을 바탕으로 선언했습니다. 입력을 바인딩합니다 매개 변수, 커서는 a를 사용하여 열어야합니다.사용절 :

Exec 범퍼카 토토 "OID 선택, OID?"
stmt1에 대한 exec sql declare foo_bar cursor;

/ * 결과 세트의 끝이 도달하면 while loop */
찾을 수 없을 때마다 Exec 범퍼카 토토이 중단됩니다.

100을 사용하여 Exec 범퍼카 토토 Open Foo_bar;
...
동안 (1)

    foo_bar에서 다음에 다음과 같은 Exec 범퍼카 토토 가져 오기 : dboid, : dbname;
    ...

더 이상 준비된 진술이 필요하지 않은 경우 거래를 할당하십시오 :

exec 범퍼카 토토 거래 준비이름;

자세한 내용은준비, 참조PostgreSQL : 문서 : 9.3 : 토토 핫. 또한 참조섹션 33.5사용에 대한 자세한 내용은 자리 표시 자 및 입력 매개 변수.