많은 경우에 특정 배트맨 토토 문은 응용 프로그램이 실행되어야 하는 것은 응용 프로그램이 실행되는 시점에 알려져 있습니다. 가 쓰여 있습니다. 그러나 어떤 경우에는 배트맨 토토 문이 다음과 같습니다. 런타임에 구성되거나 외부 소스에서 제공됩니다. 이들에서는 배트맨 토토 문을 C에 직접 포함할 수 없는 경우 소스 코드를 호출할 수 있는 기능이 있습니다. 문자열로 제공하는 임의의 배트맨 토토 문 변수.
임의의 배트맨 토토 문을 실행하는 가장 간단한 방법은 다음과 같습니다. 명령을 사용하십시오즉시 실행. 에 대한 예:
EXEC 배트맨 토토 시작 선언 섹션; const char *stmt = "CREATE TABLE test1 (...);"; EXEC 배트맨 토토 END 선언 섹션; EXEC 배트맨 토토 실행 즉시 :stmt;
당신은 데이터를 검색하는 명령문을 실행할 수 없습니다(예:선택) 이쪽으로요.
임의의 배트맨 토토 문을 실행하는 더 강력한 방법은 다음과 같습니다. 한 번만 준비하고 준비된 문을 자주 실행하세요. 당신은 좋아합니다. 일반화된 버전을 준비하는 것도 가능합니다. 명령문을 작성한 다음 특정 버전을 실행합니다. 매개변수를 대체합니다. 명세서를 준비할 때 작성하세요. 나중에 매개변수를 대체할 위치에 물음표를 표시합니다. 에 대한 예:
EXEC 배트맨 토토 시작 선언 섹션; const char *stmt = "test1 VALUES(?, ?)에 삽입;"; EXEC 배트맨 토토 END 선언 섹션; EXEC 배트맨 토토 준비 mystmt FROM :stmt; ... EXEC 배트맨 토토 EXECUTE mystmt USING 42, 'foobar';
실행 중인 명령문이 값을 반환하는 경우 다음을 추가하십시오.INTO절:
EXEC 배트맨 토토 시작 선언 섹션; const char *stmt = "test1에서 a, b, c를 선택하세요. WHERE a ?"; int v1, v2; VARCHAR v3; EXEC 배트맨 토토 END 선언 섹션; EXEC 배트맨 토토 준비 mystmt FROM :stmt; ... EXEC 배트맨 토토 EXECUTE mystmt INTO v1, v2, v3 USING 37;
안실행명령에는INTO절, a사용 중절, 둘 다 또는 둘 다 아님.
준비된 명령문이 더 이상 필요하지 않으면 다음을 수행해야 합니다. 할당을 해제하세요:
EXEC 배트맨 토토 DEALLOCATE PREPARE이름;