有结构体存放数据类型
与数据库中的数据类型绑定时,可根据用户使用习惯及便利选择以C的结构体变量绑定或者采用某种约定格式的字符串方式绑定。具体的有:Date、Time、Datetime、Time with timezone、Datetime with timezone 等。
示例:
c
DATE_STRUCT date;
TIME_STRUCT time;
TIMESTAMP_STRUCT dt;
date.year = 2022;
date.month = 5;
date.day = 1;
time.hour = 12;
time.minute = 13;
time.second = 14;
dt.year = 2022;
dt.month = 5;
dt.day = 1;
dt.hour = 12;
dt.minute = 13;
dt.second = 14;
char timeWTZ[] = "09:45:16.0 +08:00";
char dtWTZ[] = "1990-02-17 06:35:47 +08:00";
cbLen1 = sizeof(DATE_STRUCT);
cbLen2 = sizeof(TIME_STRUCT);
cbLen3 = sizeof(TIMESTAMP_STRUCT);
cbLen4 = strlen(timeWTZ);
cbLen5 = strlen(dtWTZ);
SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT,SQL_C_DATE,SQL_DATE,10,0,&date,10,&cbLen1);
SQLBindParameter(hstmt, 2, SQL_PARAM_INPUT,SQL_C_TIME,SQL_TIME,10,0,&time,10,&cbLen2);
SQLBindParameter(hstmt, 3, SQL_PARAM_INPUT,SQL_C_TIMESTAMP,SQL_TIMESTAMP,11,0,&dt,11,&cbLen3);
SQLBindParameter(hstmt, 4, SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,21,0,timeWTZ,21,&cbLen4);
SQLBindParameter(hstmt, 5, SQL_PARAM_INPUT,SQL_C_CHAR,SQL_CHAR,30,0,dtWTZ,30,&cbLen5);