데이터 형식 식별자 및 설명자

이 부록의 앞부분에 나오는 SQL 데이터 형식C 데이터 형식 섹션에 나열된 데이터 형식은 "간결한" 데이터 형식입니다. 각 식별자는 단일 데이터 형식을 참조합니다. 식별자와 데이터 형식 사이에는 일대일 대응이 있습니다. 그러나 설명자는 모든 경우에 단일 값을 사용하여 데이터 형식을 식별하지 않습니다. 경우에 따라 "자세한 정보 표시" 데이터 형식 및 형식 하위 코드를 사용합니다. datetime 및 interval 데이터 형식을 제외한 모든 데이터 형식의 경우 자세한 정보 표시 형식 식별자는 간결한 형식 식별자와 같고 SQL_DESC_DATETIME_INTERVAL_CODE 값은 0과 같습니다. 그러나 날짜/시간 및 간격 데이터 형식의 경우 자세한 정보 표시 형식(SQL_DATETIME 또는 SQL_INTERVAL)은 SQL_DESC_TYPE 저장되고 간결한 형식은 SQL_DESC_CONCISE_TYPE 저장되고 각 간결한 형식의 하위 코드는 SQL_DESC_DATETIME_INTERVAL_CODE 저장됩니다. 이러한 필드 중 하나를 설정하면 다른 필드에 영향을 줍니다. 이러한 필드에 대한 자세한 내용은 SQLSetDescField 함수 설명을 참조하세요.

일부 데이터 형식에 대해 SQL_DESC_TYPE 또는 SQL_DESC_CONCISE_TYPE 필드가 설정되면 SQL_DESC_DATETIME_INTERVAL_PRECISION, SQL_DESC_LENGTH, SQL_DESC_PRECISION 및 SQL_DESC_SCALE 필드가 데이터 형식에 해당하는 기본값으로 자동으로 설정됩니다. 자세한 내용은 SQLSetDescField의 SQL_DESC_TYPE 필드에 대한 설명을 참조하세요. 기본값 집합이 적절하지 않은 경우 애플리케이션은 SQLSetDescField 호출을 통해 설명자 필드를 명시적으로 설정해야 합니다.

다음 표에는 각 datetime 및 interval SQL 및 C 형식 식별자에 대한 간결한 형식 식별자, 자세한 정보 표시 형식 식별자 및 형식 하위 코드가 표시됩니다. 이 표에서 알 수 있듯이 datetime 및 interval 데이터 형식의 경우 SQL_DESC_TYPE 및 SQL_DESC_DATETIME_INTERVAL_CODE 필드에는 SQL 데이터 형식(구현 설명자) 및 C 데이터 형식(애플리케이션 설명자)에 대해 동일한 매니페스트 상수가 있습니다.

간결한 SQL 형식 간결한 C 형식 자세한 정보 표시 형식 DATETIME_INTERVAL_CODE
SQL_TYPE_DATE SQL_C_TYPE_DATE SQL_DATETIME SQL_CODE_DATE
SQL_TYPE_TIME SQL_C_TYPE_TIME SQL_DATETIME SQL_CODE_TIME
SQL_TYPE_TIMESTAMP SQL_C_TYPE_TIMESTAMP SQL_DATETIME SQL_CODE_TIMESTAMP
SQL_INTERVAL_MONTH SQL_C_INTERVAL_MONTH SQL_INTERVAL SQL_CODE_MONTH
SQL_INTERVAL_YEAR SQL_C_INTERVAL_YEAR SQL_INTERVAL SQL_CODE_YEAR
SQL_INTERVAL_YEAR_TO_MONTH SQL_C_INTERVAL_YEAR_TO_MONTH SQL_INTERVAL SQL_CODE_YEAR_TO_MONTH
SQL_INTERVAL_DAY SQL_C_INTERVAL_DAY SQL_INTERVAL SQL_CODE_DAY
SQL_INTERVAL_HOUR SQL_C_INTERVAL_HOUR SQL_INTERVAL SQL_CODE_HOUR
SQL_INTERVAL_MINUTE SQL_C_INTERVAL_MINUTE SQL_INTERVAL SQL_CODE_MINUTE
SQL_INTERVAL_SECOND SQL_C_INTERVAL_SECOND SQL_INTERVAL SQL_CODE_SECOND
SQL_INTERVAL_DAY_TO_HOUR SQL_C_INTERVAL_DAY_TO_HOUR SQL_INTERVAL SQL_CODE_DAY_TO_HOUR
SQL_INTERVAL_DAY_TO_MINUTE SQL_C_INTERVAL_DAY_TO_MINUTE SQL_INTERVAL SQL_CODE_DAY_TO_MINUTE
SQL_INTERVAL_DAY_TO_SECOND SQL_C_INTERVAL_DAY_TO_SECOND SQL_INTERVAL SQL_CODE_DAY_TO_SECOND
SQL_INTERVAL_HOUR_TO_MINUTE SQL_C_INTERVAL_HOUR_TO_MINUTE SQL_INTERVAL SQL_CODE_HOUR_TO_MINUTE
SQL_INTERVAL_HOUR_TO_SECOND SQL_C_INTERVAL_HOUR_TO_SECOND SQL_INTERVAL SQL_CODE_HOUR_TO_SECOND
SQL_INTERVAL_MINUTE_TO_SECOND SQL_C_INTERVAL_MINUTE_TO_SECOND SQL_INTERVAL SQL_CODE_MINUTE_TO_SECOND