C para SQL: carimbo de data/hora
O identificador para o tipo de dados ODBC C de carimbo de data/hora é:
SQL_C_TYPE_TIMESTAMP
A tabela a seguir mostra os tipos de dados SQL ODBC para os quais os dados C de carimbo de data/hora podem ser convertidos. Para obter uma explicação das colunas e termos na tabela, consulte Convertendo dados de C em tipos de dados SQL.
Identificador de tipo SQL | Teste | SQLSTATE |
---|---|---|
SQL_CHAR SQL_VARCHAR SQL_LONGVARCHAR |
Comprimento >do byte da coluna = Comprimento do byte do caractere 19 <= Comprimento < do byte da coluna Comprimento do byte do caractere Comprimento < do byte da coluna 19 O valor dos dados não é um carimbo de data/hora válido |
N/D 22001 22001 22008 |
SQL_WCHAR SQL_WVARCHAR SQL_WLONGVARCHAR |
Comprimento >do caractere da coluna = comprimento do caractere dos dados 19 <= Comprimento < do caractere da coluna Comprimento do caractere dos dados Comprimento do < caractere da coluna 19 O valor dos dados não é um carimbo de data/hora válido |
N/D 22001 22001 22008 |
SQL_TYPE_DATE | Os campos de tempo são zero Os campos de tempo são diferentes de zero O valor dos dados não contém uma data válida |
N/D 22008 22007 |
SQL_TYPE_TIME | Os campos de frações de segundo são zero[a] Os campos de frações de segundo são diferentes de zero[a] O valor dos dados não contém uma hora válida |
N/D 22008 22007 |
SQL_TYPE_TIMESTAMP | Os campos de frações de segundo não são truncados Os campos de frações de segundo são truncados O valor dos dados não é um carimbo de data/hora válido |
N/D 22008 22007 |
[a] Os campos de data da estrutura de carimbo de data/hora são ignorados.
Para obter informações sobre quais valores são válidos em uma estrutura SQL_C_TIMESTAMP, consulte Tipos de dados C, anteriormente neste apêndice.
Quando os dados C de carimbo de data/hora são convertidos em dados SQL de caracteres, os dados de caracteres resultantes estão no "aaaa-mm-dd hh:mm:ss[.f...]".
O driver ignora o valor de comprimento/indicador ao converter dados do tipo de dados C de carimbo de data/hora e assume que o tamanho do buffer de dados é o tamanho do tipo de dados C de carimbo de data/hora. O valor do comprimento/indicador é passado no argumento StrLen_or_Ind em SQLPutData e no buffer especificado com o argumento StrLen_or_IndPtr em SQLBindParameter. O buffer de dados é especificado com o argumento DataPtr em SQLPutData e o argumento ParameterValuePtr em SQLBindParameter.