Partilhar via


SQL para C: Date

O identificador para o tipo de dado SQL ODBC data é:

SQL_TYPE_DATE

A tabela seguinte mostra os tipos de dados ODBC C para os quais o driver pode converter dados SQL data. Para uma explicação das colunas e termos na tabela, veja Conversão de Dados de SQL para Tipos de Dados C.

Observação

Para conversões de caracteres, o BufferLength deve incluir espaço para o terminador nulo. Uma cadeia de datas tem 10 caracteres (yyyy-mm-dd), pelo que o BufferLength deve ter pelo menos 11 bytes para evitar truncamento.

Identificador do tipo C Teste * TargetValuePtr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR BufferLength> Comprimento do byte de carácter

11 <= BufferLength< = Comprimento do byte de carácter

BufferLength< 11
Data

Dados truncados

Não definido
10

Comprimento dos dados em bytes

Não definido
não aplicável

01004

22003
SQL_C_WCHAR BufferLength> Comprimento da personagem

11 <= BufferLength< = Comprimento do carácter

BufferLength< 11
Data

Dados truncados

Não definido
10

Comprimento dos dados em caracteres

Não definido
não aplicável

01004

22003
SQL_C_BINARY Comprimento do byte dos dados <= Comprimento do Buffer

Comprimento do byte dos dados >BufferLength
Data

Não definido
Comprimento dos dados em bytes

Não definido
não aplicável

22003
SQL_C_TYPE_DATE Nenhum1 Data 63 não aplicável
SQL_C_TYPE_TIMESTAMP Nenhum1 Dados2 163 não aplicável

1 O valor de BufferLength é ignorado nesta conversão. O driver assume que o tamanho de *TargetValuePtr é o tamanho do tipo de dado C.

2 O driver define os campos temporais da estrutura de carimbo temporal a zero.

3 Este é o tamanho do tipo de dado C correspondente.

Quando o driver converte dados SQL de data em dados de caracteres C, a cadeia resultante está no formato "yyyy-mm-dd". Este formato não é afetado pela definição de país/região do Windows.