Compartilhar via


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.