Compartir vía


Conversión de SQL a C: Fecha

El identificador de la fecha en que el tipo de datos SQL odbc es:

SQL_TYPE_DATE

En la tabla siguiente se muestran los tipos de datos ODBC C a los que el controlador puede convertir datos SQL de fecha. Para obtener una explicación de las columnas y los términos de la tabla, consulte Conversión de datos de SQL a tipos de datos de C.

Nota:

Para las conversiones de caracteres, BufferLength debe incluir espacio para el terminador NULO. Una cadena de fecha tiene 10 caracteres de longitud (aaaa-mm-dd), por lo que BufferLength debe tener al menos 11 bytes para evitar el truncamiento.

Identificador de tipo C Test * TargetValuePtr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR Longitud de bytes de carácter BufferLength>

11 <= BufferLength<= Longitud de bytes de caracteres

BufferLength< 11
Data

Datos truncados

Indefinido
10

Longitud de los datos en bytes

Indefinido
n/a

01004

22003
SQL_C_WCHAR BufferLength> Longitud del carácter

11 <= BufferLength<= longitud de caracteres

BufferLength< 11
Data

Datos truncados

Indefinido
10

Longitud de datos en caracteres

Indefinido
n/a

01004

22003
SQL_C_BINARY Longitud de bytes de datos <= BufferLength

Longitud de bytes de BufferLength de datos >
Data

Indefinido
Longitud de los datos en bytes

Indefinido
n/a

22003
SQL_C_TYPE_DATE Ninguno1 Data 63 n/a
SQL_C_TYPE_TIMESTAMP Ninguno1 Datos2 163 n/a

1 El valor de BufferLength se omite para esta conversión. El controlador supone que el tamaño de *TargetValuePtr es el tamaño del tipo de datos de C.

2 El controlador establece los campos de tiempo de la estructura de marca de tiempo en cero.

3 Este es el tamaño del tipo de datos de C correspondiente.

Cuando el controlador convierte los datos DE SQL de fecha en datos de caracteres C, la cadena resultante tiene el formato "aaaa-mm-dd". Este formato no se ve afectado por la configuración de país o región de Windows.