C a SQL: marca de tiempo
El identificador del tipo de datos ODBC C de marca de tiempo es:
SQL_C_TYPE_TIMESTAMP
En la tabla siguiente se muestran los tipos de datos DE SQL ODBC a los que se pueden convertir los datos de marca de tiempo de C. Para obtener una explicación de las columnas y los términos de la tabla, consulte Conversión de datos de C a tipos de datos SQL.
Identificador de tipo SQL | Prueba | SQLSTATE |
---|---|---|
SQL_CHAR SQL_VARCHAR SQL_LONGVARCHAR |
Longitud de bytes de columna >= longitud de bytes de caracteres 19 <= Longitud de bytes de bytes de columna < Longitud de bytes de caracteres Longitud de bytes de columna < 19 El valor de datos no es una marca de tiempo válida |
N/D 22001 22001 22008 |
SQL_WCHAR SQL_WVARCHAR SQL_WLONGVARCHAR |
Longitud de caracteres de columna >= Longitud de caracteres de datos 19 <= Longitud de caracteres de columna < Longitud de caracteres de datos Longitud de caracteres de columna < 19 El valor de datos no es una marca de tiempo válida |
N/D 22001 22001 22008 |
SQL_TYPE_DATE | Los campos de hora son cero Los campos de hora son distintos de cero El valor de datos no contiene una fecha válida |
N/D 22008 22007 |
SQL_TYPE_TIME | Los campos de fracciones de segundos son cero[a] Los campos fraccionarios de segundos son distintos de cero[a] El valor de datos no contiene una hora válida |
N/D 22008 22007 |
SQL_TYPE_TIMESTAMP | Los campos fraccionarios de segundos no se truncan Los campos de fracciones de segundos se truncan El valor de datos no es una marca de tiempo válida |
N/D 22008 22007 |
[a] Los campos de fecha de la estructura de marca de tiempo se omiten.
Para obtener información sobre qué valores son válidos en una estructura de SQL_C_TIMESTAMP, vea Tipos de datos de C, anteriormente en este apéndice.
Cuando los datos de marca de tiempo de C se convierten en datos SQL de caracteres, los datos de caracteres resultantes están en "aaaa-mm dd hh:mm-:ss[.formato f...]".
El controlador omite el valor de longitud o indicador al convertir datos del tipo de datos de marca de tiempo C y supone que el tamaño del búfer de datos es el tamaño del tipo de datos de marca de tiempo de C. El valor de longitud/indicador se pasa en el argumento StrLen_or_Ind en SQLPutData y en el búfer especificado con el argumento StrLen_or_IndPtr en SQLBindParameter. El búfer de datos se especifica con el argumento DataPtr en SQLPutData y el argumento ParameterValuePtr en SQLBindParameter.