다음을 통해 공유


매개 변수 바인딩 오프셋

애플리케이션은 SQLExecDirect 또는 SQLExecute가 호출될 때 바인딩된 매개 변수 버퍼 주소 및 해당 길이/표시기 버퍼 주소에 오프셋이 추가되도록 지정할 수 있습니다. 이러한 추가의 결과는 이러한 작업에 사용되는 주소를 결정합니다.

바인딩 오프셋을 사용하면 애플리케이션이 이전에 바인딩된 매개 변수에 대해 SQLBindParameter를 호출하지 않고도 바인딩을 변경할 수 있습니다. SQLBindParameter를 호출하여 매개 변수를 다시 바인딩하면 버퍼 주소와 길이/표시기 포인터가 변경됩니다. 반면에 오프셋을 사용하여 다시 바인딩하면 기존 바인딩된 매개 변수 버퍼 주소와 길이/표시기 버퍼 주소에 오프셋을 추가하기만 하면 됩니다. 오프셋을 사용하는 경우 바인딩은 애플리케이션 버퍼가 배치되는 방식의 "템플릿"이며 애플리케이션은 오프셋을 변경하여 이 "템플릿"을 다른 메모리 영역으로 이동할 수 있습니다. 언제든지 새 오프셋을 지정할 수 있으며 항상 원래 바인딩된 값에 추가됩니다.

바인딩 오프셋을 지정하기 위해 애플리케이션은 SQL_ATTR_PARAM_BIND_OFFSET_PTR 문 특성을 SQLINTEGER 버퍼의 주소로 설정합니다. 애플리케이션이 바인딩을 사용하는 함수를 호출하기 전에 매개 변수 버퍼 주소나 길이/표시기 버퍼 주소가 0이 아니고 바인딩된 매개 변수가 SQL 문에 있는 한 이 버퍼에 오프셋을 바이트 단위로 배치합니다. 주소와 오프셋의 합계는 유효한 주소여야 합니다. 즉, 합계가 유효한 주소인 한 오프셋과 오프셋이 추가되는 주소 중 하나 또는 둘 다 유효하지 않을 수 있습니다.

참고 항목

바인딩 오프셋은 ODBC 2에서 지원되지 않습니다.x 드라이버.