매개 변수 설명

SQLBindParameter에는 매개 변수를 설명하는 인수(SQL 형식, 전체 자릿수 및 배율)가 있습니다. 드라이버는 이 정보 또는 메타데이터를 사용하여 매개 변수 값을 데이터 원본에 필요한 형식으로 변환합니다. 처음에는 드라이버가 애플리케이션보다 매개 변수 메타데이터를 더 잘 알고 있는 것처럼 보일 수 있습니다. 결국 드라이버는 결과 집합 열에 대한 메타데이터를 쉽게 검색할 수 있습니다. 알고 있는 것처럼 이는 해당되지 않습니다. 첫째, 대부분의 데이터 원본은 드라이버가 매개 변수 메타데이터를 검색하는 방법을 제공하지 않습니다. 둘째, 대부분의 애플리케이션은 메타데이터를 이미 알고 있습니다.

애플리케이션에서 SQL 문이 하드 코딩된 경우 애플리케이션 작성기는 각 매개 변수의 형식을 이미 알고 있습니다. 런타임에 애플리케이션에서 SQL 문을 생성하면 애플리케이션이 문을 빌드할 때 메타데이터를 확인할 수 있습니다. 예를 들어 애플리케이션이 절을 생성할 때

WHERE OrderID = ?  

OrderID 열에 대해 SQLColumns를 호출할 수 있습니다.

애플리케이션에서 매개 변수 메타데이터를 쉽게 확인할 수 없는 유일한 상황은 사용자가 매개 변수가 있는 문을 입력하는 경우입니다. 이 경우 애플리케이션은 SQLPrepare를 호출하여 문을 준비하고, SQLNumParams를 호출하여 매개 변수 수를 확인하고, SQLDescribeParam을 호출하여 각 매개 변수를 설명합니다. 그러나 앞서 설명한 대로 대부분의 데이터 원본은 드라이버가 매개 변수 메타데이터를 검색할 수 있는 방법을 제공하지 않으므로 SQLDescribeParam은 널리 지원되지 않습니다.