Partager via


SQL en C : date

L’identificateur du type de données ODBC SQL date est le suivant :

SQL_TYPE_DATE

Le tableau suivant montre les types de données ODBC C vers lesquels le pilote peut convertir des données SQL de date. Pour obtenir une explication des colonnes et des termes de la table, consultez Conversion de données de SQL en types de données C.

Note

Pour les conversions de caractères, BufferLength doit inclure de l’espace pour le terminateur Null. Une chaîne de date est de 10 caractères (aaaa-mm-dd), de sorte que BufferLength doit être d’au moins 11 octets pour éviter la troncation.

Identificateur de type C Test * TargetValuePtr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR Longueur d’octet de caractère BufferLength>

11 <= BufferLength<= Longueur d’octet de caractère

BufferLength< 11
Data

Données tronquées

Indéfini
10

Longueur des données en octets

Indéfini
n/a

01004

22003
SQL_C_WCHAR Longueur du caractère BufferLength>

11 <= BufferLength<= Longueur du caractère

BufferLength< 11
Data

Données tronquées

Indéfini
10

Longueur des données en caractères

Indéfini
n/a

01004

22003
SQL_C_BINARY Longueur d’octet des données <= BufferLength

Longueur d’octet des données >BufferLength
Data

Indéfini
Longueur des données en octets

Indéfini
n/a

22003
SQL_C_TYPE_DATE Aucun1 Data 63 n/a
SQL_C_TYPE_TIMESTAMP Aucun1 Données2 163 n/a

1 La valeur de BufferLength est ignorée pour cette conversion. Le pilote suppose que la taille de *TargetValuePtr est la taille du type de données C.

2 Le pilote définit les champs d’heure de la structure d’horodatage sur zéro.

3 Il s’agit de la taille du type de données C correspondant.

Lorsque le pilote convertit les données SQL de date en données C caractère, la chaîne résultante est au format « aaaa-mm-jj ». Ce format n’est pas affecté par le paramètre pays/région Windows.