이 항목에서는 COLUMNS 및 PROCEDURE_PARAMETERS 행 집합에 대한 정보를 제공합니다. 이 정보는 SQL Server 2008에 도입된 OLE DB 날짜 및 시간 향상과 관련이 있습니다.
COLUMNS 행 집합
날짜/시간 형식에 대해 다음 열 값이 반환됩니다.
| 열 형식 | 데이터 유형 | COLUMN_FLAGS, DBCOLUMFLAGS_SS_ISVARIABLESCALE | DATETIME_PRECISION |
|---|---|---|---|
| 날짜 | DBTYPE_DBDATE | 맑다 | 0 |
| 시간 | DBTYPE_DBTIME2 | 설정 | 0..7 |
| 스몰데이트타임 | DBTYPE_DBTIMESTAMP | 맑다 | 0 |
| 날짜 및 시간 | DBTYPE_DBTIMESTAMP | 맑다 | 3 |
| datetime2은(는) 데이터베이스 날짜 및 시간 형식의 데이터 타입입니다. | DBTYPE_DBTIMESTAMP | 설정 | 0..7 |
| DateTimeOffset (날짜 및 시간 오프셋) | DBTYPE_DBTIMESTAMPOFFSET | 설정 | 0..7 |
COLUMN_FLAGS에서 날짜/시간 형식에 대해 DBCOLUMNFLAGS_ISFIXEDLENGTH는 항상 true이지만 다음과 같은 플래그는 항상 false입니다.
DBCOLUMNFLAGS_CACHEDEFERRED
DBCOLUMNFLAGS_ISBOOKMARK
DBCOLUMNFLAGS_ISCHAPTER
DBCOLUMNFLAGS_ISLONG
DBCOLUMNFLAGS_ISROWID
DBCOLUMNFLAGS_ISROWVER
DBCOLUMNFLAGS_MAYDEFER
나머지 플래그(DBCOLUMNFLAGS_ISNULLABLE, DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE 및 DBCOLUMNFLAGS_WRITEUNKNOWN)는 열이 정의되는 방법에 따라 설정될 수 있습니다.
새 플래그 DBCOLUMNFLAGS_SS_ISVARIABLESCALE은 애플리케이션에서 DATA_TYPE이 DBTYPE_DBTIMESTAMP인 열의 서버 유형을 확인할 수 있도록 COLUMN_FLAGS에 제공됩니다. 서버 유형을 확인하려면 DATETIME_PRECISION도 사용해야 합니다.
DBCOLUMNFLAGS_SS_ISVARIABLESCALE SQL Server 2008 이상 서버에 연결된 경우에만 유효합니다. 하위 수준 서버에 연결된 경우에는 DBCOLUMNFLAGS_SS_ISFIXEDSCALE이 정의되지 않습니다.
PROCEDURE_PARAMETERS 행 집합
DATA_TYPE에는 COLUMNS 스키마 행 집합과 동일한 값이 포함되고 TYPE_NAME에는 서버 유형이 포함됩니다.
새 열 SS_DATETIME_PRECISION은 COLUMNS 행 집합과 유사한 DATETIME_PRECISION에서처럼 형식의 전체 자릿수를 반환하기 위해 추가되었습니다.
PROVIDER_TYPES 행 집합
날짜/시간 형식에 대해 다음 행이 반환됩니다.
| 받는 사람 -> 칼럼 |
날짜 | 시간 | 스몰데이트타임 | 날짜 및 시간 | datetime2은(는) 데이터베이스 날짜 및 시간 형식의 데이터 타입입니다. | DateTimeOffset (날짜 및 시간 오프셋) |
|---|---|---|---|---|---|---|
| 타입_이름 | 날짜 | 시간 | 스몰데이트타임 | 날짜 및 시간 | datetime2은(는) 데이터베이스 날짜 및 시간 형식의 데이터 타입입니다. | DateTimeOffset (날짜 및 시간 오프셋) |
| 데이터 유형 | DBTYPE_DBDATE | DBTYPE_DBTIME2 | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMPOFFSET |
| COLUMN_SIZE | 10 | 16 | 16 | 23 | 27 | 34 |
| LITERAL_PREFIX | ' | ' | ' | ' | ' | ' |
| LITERAL_SUFFIX | ' | ' | ' | ' | ' | ' |
| CREATE_PARAMS | 없음 | 규모 | 없음 | 없음 | 규모 | 규모 |
| IS_NULLABLE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE |
| CASE_SENSITIVE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| 검색 | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE |
| UNSIGNED_ATTRIBUTE | 없음 | 없음 | 없음 | 없음 | 없음 | 없음 |
| FIXED_PREC_SCALE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| AUTO_UNIQUE_VALUE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| LOCAL_TYPE_NAME | 날짜 | 시간 | 스몰데이트타임 | 날짜 및 시간 | datetime2은(는) 데이터베이스 날짜 및 시간 형식의 데이터 타입입니다. | DateTimeOffset (날짜 및 시간 오프셋) |
| MINIMUM_SCALE | 없음 | 0 | 없음 | 없음 | 0 | 0 |
| MAXIMUM_SCALE | 없음 | 7 | 없음 | 없음 | 7 | 7 |
| GUID | 없음 | 없음 | 없음 | 없음 | 없음 | 없음 |
| TYPELIB | 없음 | 없음 | 없음 | 없음 | 없음 | 없음 |
| 버전 | 없음 | 없음 | 없음 | 없음 | 없음 | 없음 |
| IS_LONG | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| BEST_MATCH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE(다음 중 하나에 해당하지 않을 경우) - 클라이언트가 하위 수준 서버에 연결되어 있는지 확인합니다. - 데이터 형식 호환성 연결 속성은 80과 같은 호환성 수준을 지정합니다. |
VARIANT_TRUE(다음 중 하나에 해당하지 않을 경우) - 클라이언트가 하위 수준 서버에 연결되어 있는지 확인합니다. - 데이터 형식 호환성 연결 속성은 80과 같은 호환성 수준을 지정합니다. |
VARIANT_TRUE |
| IS_FIXEDLENGTH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE |
OLE DB는 숫자 및 10진수 형식에 대한 MINIMUM_SCALE 및 MAXIMUM_SCALE 정의하므로 SQL Server Native Client가 시간, datetime2 및 datetimeoffset에 이러한 열을 사용하는 것은 표준이 아닙니다.