C para SQL: hora
O identificador da hora em que o tipo de dados ODBC C é:
SQL_C_TYPE_TIME
A tabela a seguir mostra os tipos de dados SQL ODBC para os quais os dados C podem ser convertidos. Para obter uma explicação das colunas e dos termos na tabela, consulte Convertendo dados de C para tipos de dados SQL.
Identificador de tipo SQL | Teste | SQLSTATE |
---|---|---|
SQL_CHAR SQL_VARCHAR SQL_LONGVARCHAR |
Comprimento do >byte da coluna = 8 Comprimento do byte < da coluna 8 O valor dos dados não é uma hora válida |
n/d 22001 22008 |
SQL_WCHAR SQL_WVARCHAR SQL_WLONGVARCHAR |
Comprimento do >caractere da coluna = 8 Comprimento < do caractere de coluna 8 O valor dos dados não é uma hora válida |
n/d 22001 22008 |
SQL_TYPE_TIME | O valor dos dados é uma hora válida O valor dos dados não é uma hora válida |
n/d 22007 |
SQL_TYPE_TIMESTAMP | O valor dos dados é um tempo válido[a] O valor dos dados não é uma hora válida |
n/d 22007 |
[a] A parte de data do carimbo de data/hora é definida como a data atual e a parte de segundos fracionários do carimbo de data/hora é definida como zero.
Para obter informações sobre quais valores são válidos em uma estrutura de SQL_C_TYPE_TIME, consulte Tipos de dados C, anteriormente neste apêndice.
Quando os dados C são convertidos em dados SQL de caracteres, os dados de caractere resultantes estão no formato "hh:mm:ss".
O driver ignora o valor de comprimento/indicador ao converter dados do tipo de dados C de tempo e pressupõe que o tamanho do buffer de dados é o tamanho do tipo de dados C de tempo. O valor de 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.