Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tópico fornece informações sobre os conjuntos de linhas de COLUMNS e de PROCEDURE_PARAMETERS. Essas informações referem-se aos aprimoramentos de data e hora do OLE DB introduzidos no SQL Server 2008.
Conjunto de linhas de COLUMNS
Os valores de coluna a seguir são retornados para tipos de data/hora:
| Tipo de coluna | DATA_TYPE | COLUMN_FLAGS, DBCOLUMFLAGS_SS_ISVARIABLESCALE | DATETIME_PRECISION |
|---|---|---|---|
| data | DBTYPE_DBDATE | Limpar | 0 |
| Hora | DBTYPE_DBTIME2 | Conjunto | 0..7 |
| smalldatetime | DBTYPE_DBTIMESTAMP | Limpar | 0 |
| Data e hora | DBTYPE_DBTIMESTAMP | Limpar | 3 |
| `datetime2` | DBTYPE_DBTIMESTAMP | Conjunto | 0..7 |
| datetimeoffset | DBTYPE_DBTIMESTAMPOFFSET | Conjunto | 0..7 |
Em COLUMN_FLAGS, DBCOLUMNFLAGS_ISFIXEDLENGTH é sempre true para tipos de data/hora e os sinalizadores seguintes sempre é false:
DBCOLUMNFLAGS_CACHEDEFERRED
DBCOLUMNFLAGS_ISBOOKMARK
DBCOLUMNFLAGS_ISCHAPTER
DBCOLUMNFLAGS_ISLONG
DBCOLUMNFLAGS_ISROWID
DBCOLUMNFLAGS_ISROWVER
DBCOLUMNFLAGS_MAYDEFER
Os sinalizadores restantes (DBCOLUMNFLAGS_ISNULLABLE, DBCOLUMNFLAGS_MAYBENULL, DBCOLUMNFLAGS_WRITE e DBCOLUMNFLAGS_WRITEUNKNOWN) podem ser definidos, dependendo de como a coluna é definida.
Um novo sinalizador, DBCOLUMNFLAGS_SS_ISVARIABLESCALE, é fornecido em COLUMN_FLAGS para permitir que um aplicativo determine o tipo de servidor de colunas em que DATA_TYPE é DBTYPE_DBTIMESTAMP. DATETIME_PRECISION também deve ser usado para identificar o tipo de servidor.
DBCOLUMNFLAGS_SS_ISVARIABLESCALE só é válido quando conectado a um SERVIDOR SQL Server 2008 ou posterior. DBCOLUMNFLAGS_SS_ISFIXEDSCALE é indefinido quando conectado a servidores de nível inferior.
Conjunto de linhas de PROCEDURE_PARAMETERS
DATA_TYPE contém os mesmos valores que o conjunto de linhas de esquema de COLUMNS e TYPE_NAME contém o tipo de servidor.
Uma nova coluna, SS_DATETIME_PRECISION, foi adicionada para retornar a precisão do tipo como na coluna DATETIME_PRECISION, semelhante ao conjunto de linhas de COLUMNS.
Conjunto de linhas de PROVIDER_TYPES
As linhas a seguir são retornadas para tipos de data/hora:
| Tipo -> Coluna |
data | Hora | smalldatetime | Data e hora | `datetime2` | datetimeoffset |
|---|---|---|---|---|---|---|
| TYPE_NAME | data | Hora | smalldatetime | Data e hora | `datetime2` | datetimeoffset |
| DATA_TYPE | DBTYPE_DBDATE | DBTYPE_DBTIME2 | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMP | DBTYPE_DBTIMESTAMPOFFSET |
| COLUMN_SIZE | 10 | 16 | 16 | vinte e três | 27 | 34 |
| LITERAL_PREFIX | ' | ' | ' | ' | ' | ' |
| LITERAL_SUFFIX | ' | ' | ' | ' | ' | ' |
| CREATE_PARAMS | NULO | escala | NULO | NULO | escala | escala |
| 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 |
| PESQUISÁVEL | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE | DB_SEARCHABLE |
| UNSIGNED_ATTRIBUTE | NULO | NULO | NULO | NULO | NULO | NULO |
| 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 | data | Hora | smalldatetime | Data e hora | `datetime2` | datetimeoffset |
| MINIMUM_SCALE | NULO | 0 | NULO | NULO | 0 | 0 |
| MAXIMUM_SCALE | NULO | 7 | NULO | NULO | 7 | 7 |
| Identificador Globalmente Único (GUID) | NULO | NULO | NULO | NULO | NULO | NULO |
| TYPELIB | NULO | NULO | NULO | NULO | NULO | NULO |
| VERSÃO | NULO | NULO | NULO | NULO | NULO | NULO |
| IS_LONG | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE | VARIANT_FALSE |
| BEST_MATCH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE a menos que uma das condições a seguir seja verdadeira: – O cliente está conectado a um servidor de nível inferior. - A propriedade de conexão de compatibilidade de tipo de dados especifica um nível de compatibilidade igual a 80. |
VARIANT_TRUE a menos que uma das condições a seguir seja verdadeira: – O cliente está conectado a um servidor de nível inferior. - A propriedade de conexão de compatibilidade de tipo de dados especifica um nível de compatibilidade igual a 80. |
VARIANT_TRUE |
| IS_FIXEDLENGTH | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE | VARIANT_TRUE |
O OLE DB define apenas MINIMUM_SCALE e MAXIMUM_SCALE para tipos numéricos e decimais, portanto, o uso dessas colunas pelo SQL Server Native Client para tempo, datetime2 e datetimeoffset não é padrão.