SQL a C: marca de tiempo
El identificador del tipo de datos ODBC SQL de marca de tiempo es el siguiente:
- SQL_TYPE_TIMESTAMP
En la tabla siguiente se muestran los tipos de datos ODBC C a los que se pueden convertir los datos SQL de marca de tiempo. 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.
Identificador de tipo C | Prueba | *TargetValuePtr | *StrLen_or_IndPtr | SQLSTATE |
---|---|---|---|---|
SQL_C_CHAR | Longitud de bytes de carácter BufferLength> 20 <= BufferLength<= Longitud de bytes de caracteres BufferLength< 20 |
Data Datos truncados[b] Undefined |
Longitud de los datos en bytes Longitud de los datos en bytes Undefined |
N/D 01004 22003 |
SQL_C_WCHAR | BufferLength> Longitud del carácter 20 <= BufferLength<= longitud de caracteres BufferLength< 20 |
Data Datos truncados[b] Undefined |
Longitud de datos en caracteres Longitud de datos en caracteres Undefined |
N/D 01004 22003 |
SQL_C_BINARY | Longitud de bytes de datos <= BufferLength Longitud de bytes de BufferLength de datos > |
Data Undefined |
Longitud de los datos en bytes Undefined |
N/D 22003 |
SQL_C_TYPE_DATE | La parte de tiempo de la marca de tiempo es cero[a] La parte de tiempo de la marca de tiempo es distinto de cero[a] |
Data Datos truncados[c] |
6[f] 6[f] |
N/D 01S07 |
SQL_C_TYPE_TIME | La parte fraccionaria de segundos de marca de tiempo es cero[a] La parte fraccionaria de segundos de marca de tiempo es distinto de cero[a] |
Datos[d] Datos truncados[d], [e] |
6[f] 6[f] |
N/D 01S07 |
SQL_C_TYPE_TIMESTAMP | La parte fraccionaria de segundos de la marca de tiempo no se trunca[a] La parte fraccionaria de segundos de la marca de tiempo se trunca[a] |
Datos[e] Datos truncados[e] |
16[f] 16[f] |
N/D 01S07 |
[a] 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.
[b] Las fracciones de segundos de la marca de tiempo se truncan.
[c] La parte de tiempo de la marca de tiempo se trunca.
[d] Se omite la parte de fecha de la marca de tiempo.
[e] La parte fraccionaria de segundos de la marca de tiempo se trunca.
[f] Este es el tamaño del tipo de datos de C correspondiente.
Cuando los datos sql de marca de tiempo se convierten en datos de caracteres C, la cadena resultante se encuentra en "aaaa-mm dd hh:mm-:ss[.Formato f...]", donde se pueden usar hasta nueve dígitos durante fracciones de segundos. Este formato no se ve afectado por la configuración de país o región de Windows. (Excepto para el separador decimal y las fracciones de segundos, se debe usar todo el formato, independientemente de la precisión del tipo de datos SQL de marca de tiempo).