IPD의 자동 채우기

일부 드라이버는 매개 변수가 있는 쿼리를 준비한 후 IPD의 필드를 설정할 수 있습니다. 설명자 필드는 데이터 형식, 정밀도, 소수 자릿수 및 기타 특성을 포함하여 매개 변수에 대한 정보로 자동으로 채워집니다. 이는 SQLDescribeParam을 지원하는 것과 같습니다. 이 정보는 애플리케이션에서 알 수 없는 매개 변수를 사용하여 임시 쿼리를 수행하는 경우와 같이 검색할 다른 방법이 없는 경우 애플리케이션에 특히 유용할 수 있습니다.

애플리케이션은 드라이버가 SQL_ATTR_AUTO_IPD 특성을 사용하여 SQLGet커넥트Attr을 호출하여 자동 채우기를 지원하는지 여부를 결정합니다. SQL_TRUE 반환되는 경우 드라이버는 이를 지원하고 애플리케이션은 SQL_ATTR_ENABLE_AUTO_IPD 문 특성을 SQL_TRUE 설정하여 사용하도록 설정할 수 있습니다.

자동 채우기가 지원되고 사용하도록 설정된 경우 드라이버는 SQLPrepare 호출을 통해 매개 변수 마커가 포함된 SQL 문이 준비된 후 IPD의 필드를 채웁니다. 애플리케이션은 SQLGetDescField 또는 SQLGetDescRec 또는 SQLDescribeParam을 호출하여 이 정보를 검색할 수 있습니다. 애플리케이션은 정보를 사용하여 매개 변수에 가장 적합한 애플리케이션 버퍼를 바인딩하거나 해당 매개 변수에 대한 데이터 변환을 지정할 수 있습니다.

IPD의 자동 채우기는 성능 저하를 생성할 수 있습니다. 애플리케이션은 SQL_ATTR_ENABLE_AUTO_IPD 문 특성을 SQL_FALSE(기본값)로 다시 설정하여 해제할 수 있습니다.