C en SQL : horodatage
L’identificateur du type de données ODBC C d’horodatage est :
SQL_C_TYPE_TIMESTAMP
Le tableau suivant montre les types de données ODBC SQL vers lesquels les données timestamp C peuvent être converties. Pour obtenir une explication des colonnes et des termes de la table, consultez Conversion de données de C en types de données SQL.
Identificateur de type SQL | Test | SQLSTATE |
---|---|---|
SQL_CHAR SQL_VARCHAR SQL_LONGVARCHAR |
Longueur >d’octet de colonne = Longueur d’octet de caractère 19 <= Longueur d’octet de la longueur < du caractère de colonne Longueur < d’octet de colonne 19 La valeur de données n’est pas un horodatage valide |
n/a 22001 22001 22008 |
SQL_WCHAR SQL_WVARCHAR SQL_WLONGVARCHAR |
Longueur >du caractère de colonne = Longueur de caractère des données 19 <= Longueur < du caractère de colonne Longueur de caractères des données Longueur < du caractère de colonne 19 La valeur de données n’est pas un horodatage valide |
n/a 22001 22001 22008 |
SQL_TYPE_DATE | Les champs de temps sont zéro Les champs d’heure ne sont pas zéro La valeur de données ne contient pas de date valide |
n/a 22008 22007 |
SQL_TYPE_TIME | Les champs fractionnaires en secondes sont zéro[a] Les champs fractionnaires de seconde sont différent de zéro[a] La valeur de données ne contient pas de temps valide |
n/a 22008 22007 |
SQL_TYPE_TIMESTAMP | Les champs fractionnaires en secondes ne sont pas tronqués Les champs fractionnaires en secondes sont tronqués La valeur de données n’est pas un horodatage valide |
n/a 22008 22007 |
[a] Les champs de date de la structure d’horodatage sont ignorés.
Pour plus d’informations sur les valeurs valides dans une structure SQL_C_TIMESTAMP, consultez les types de données C, plus haut dans cette annexe.
Lorsque les données timestamp C sont converties en données SQL caractères, les données de caractères résultantes se situent dans la valeur « aaaa- mm-dd hh :mm :ss[.f...]" format.
Le pilote ignore la valeur de longueur/d’indicateur lors de la conversion de données à partir du type de données timestamp C et suppose que la taille de la mémoire tampon de données est la taille du type de données timestamp C. La valeur de longueur/indicateur est passée dans l’argument StrLen_or_Ind dans SQLPutData et dans la mémoire tampon spécifiée avec l’argument StrLen_or_IndPtr dans SQLBindParameter. La mémoire tampon de données est spécifiée avec l’argument DataPtr dans SQLPutData et l’argument ParameterValuePtr dans SQLBindParameter.