열 크기, 10진수, 8진수 길이 전송 및 표시 크기 - ODBC

데이터 형식은 열(또는 매개 변수) 크기, 10진수, 길이 및 표시 크기로 특징지어집니다. 다음 ODBC 함수는 SQL 문의 매개 변수 또는 데이터 원본의 SQL 데이터 형식에 대해 이러한 특성을 반환합니다. 각 ODBC 함수는 다음과 같이 이러한 특성의 다른 집합을 반환합니다.

  • SQLDescribeCol 은 설명하는 열의 열 크기와 소수 자릿수를 반환합니다.

  • SQLDescribeParam 은 설명하는 매개 변수의 매개 변수 크기와 소수 자릿수를 반환합니다. SQLBindParameter 는 SQL 문의 매개 변수에 대한 매개 변수 크기와 소수 자릿수를 설정합니다.

  • 카탈로그 함수 SQLColumns, SQLProcedureColumnsSQLGetTypeInfo 는 테이블, 결과 집합 또는 프로시저 매개 변수의 열에 대한 특성과 데이터 원본에 있는 데이터 형식의 카탈로그 특성을 반환합니다. SQLColumns는 지정된 테이블(예: 기본 테이블, 뷰 또는 시스템 테이블)에 있는 열의 열 크기, 10진수 및 길이를 반환합니다. SQLProcedureColumns는 프로시저에서 열의 크기, 10진수 및 길이를 반환합니다. SQLGetTypeInfo 는 데이터 원본에서 SQL 데이터 형식의 최대 열 크기와 최소 및 최대 소수 자릿수를 반환합니다.

열 또는 매개 변수 크기에 대해 이러한 함수에서 반환되는 값은 ODBC 2에 정의된 "전체 자릿수"에 해당합니다.x. 그러나 값이 SQL_DESC_PRECISION 또는 다른 설명자 필드에 반환된 값과 반드시 일치하는 것은 아닙니다. ODBC 2에 정의된 "배율"에 해당하는 소수 자릿수도 마찬가지입니다.x. SQL_DESC_SCALE 또는 다른 설명자 필드에 반환된 값과 반드시 일치하지는 않지만 데이터 형식에 따라 다른 설명자 필드에서 제공됩니다. 자세한 내용은 열 크기10진수를 참조하세요.

마찬가지로, 전송 8진수 길이에 대한 값은 SQL_DESC_LENGTH 제공되지 않습니다. 모든 문자 및 이진 형식에 대한 설명자 필드의 SQL_DESC_OCTET_LENGTH. 다른 형식에 대해 이 정보를 보유하는 설명자 필드가 없습니다.

모든 데이터 형식의 표시 크기 값은 SQL_DESC_DISPLAY_SIZE 단일 설명자 필드의 값에 해당합니다.

설명자 필드는 결과 집합의 특징을 설명합니다. 설명자 필드는 문을 실행하기 전에 데이터에 대한 유효한 값을 포함하지 않습니다. 반면에 SQLColumns, SQLProcedureColumns 및 SQLGetTypeInfo에서 반환된 열 크기, 10진수 및 표시 크기에 대한 값은 데이터 원본 카탈로그에 있는 테이블 열 및 데이터 형식과 같은 데이터베이스 개체의 특성을 반환합니다. 마찬가지로 결과 집합 에서 SQLColAttribute 는 데이터 원본에서 열의 열 크기, 10진수 및 전송 8진수 길이를 반환합니다. 이러한 값은 반드시 SQL_DESC_PRECISION, SQL_DESC_SCALE 및 SQL_DESC_OCTET_LENGTH 설명자 필드의 값과 동일하지는 않습니다.

이러한 설명자 필드에 대한 자세한 내용은 SQLSetDescField를 참조 하세요.

관련 항목: