📄 database.cpp
字号:
}
int SelectZysfz(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
SQLRETURN retcode;
retcode = SQLAllocHandle(SQL_HANDLE_STMT,m_baseid->hdbc,&m_baseid->hstmt);
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
char m_sql1[] = "select ";
char m_sql2[100];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s ",m_sql1,m_tablename);
SQLCHAR m_sfzbh[5],m_zyrkz[5],m_ckcdh[3];
SQLINTEGER m_sfzbhlen,m_ckcdhlen,m_zyrkzlen;
memset(m_sfzbh,'\0',sizeof(m_sfzbh));
memset(m_ckcdh,'\0',sizeof(m_ckcdh));
memset(m_zyrkz,'\0',sizeof(m_zyrkz));
retcode == SQLPrepare(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLExecDirect(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLBindCol(m_baseid->hstmt, 1, SQL_C_CHAR, m_sfzbh, 5, &m_sfzbhlen);
retcode = SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_ckcdh, 3, &m_ckcdhlen);
retcode = SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_zyrkz, 5, &m_zyrkzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_zysfz.sfzbh,"%s",(unsigned char*)m_sfzbh);
sprintf(m_zysfz.zyrkz,"%s",(unsigned char*)m_zyrkz);
sprintf(m_zysfz.ckcdh,"%s",(unsigned char*)m_ckcdh);
int laneno = atoi(m_zysfz.ckcdh);
char sLN[3];
sprintf(sLN,"%02d",laneno);
//Writekeyprofile(m_filename,"[ROADINFO]",sLN,m_zysfz.zyrkz);
::WritePrivateProfileString("ROADINFO",sLN,m_zysfz.zyrkz,m_filename);
}
else{
printf("the record fetched overed\n");
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
return 0;
}
}
}
else{
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
return 1;
}
}
else{
printf("SQL allocate handle error\n");
return 1;
}
return 1;
}
int SelectZyzhz(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
SQLRETURN retcode;
retcode = SQLAllocHandle(SQL_HANDLE_STMT,m_baseid->hdbc,&m_baseid->hstmt);
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
char m_sql1[] = "select ";
char m_sql2[100];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s ",m_sql1,m_tablename);
SQLCHAR m_sfzbh[5],m_zyzhz[5],m_ckcdh[3];
SQLINTEGER m_sfzbhlen,m_ckcdhlen,m_zyzhzlen;
memset(m_sfzbh,'\0',sizeof(m_sfzbh));
memset(m_ckcdh,'\0',sizeof(m_ckcdh));
memset(m_zyzhz,'\0',sizeof(m_zyzhz));
retcode == SQLPrepare(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLExecDirect(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLBindCol(m_baseid->hstmt, 1, SQL_C_CHAR, m_sfzbh, 5, &m_sfzbhlen);
retcode = SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_ckcdh, 3, &m_ckcdhlen);
retcode = SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_zyzhz, 5, &m_zyzhzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_zyzfz.sfzbh,"%s",(unsigned char*)m_sfzbh);
sprintf(m_zyzfz.zyzhz,"%s",(unsigned char*)m_zyzhz);
sprintf(m_zyzfz.ckcdh,"%s",(unsigned char*)m_ckcdh);
int laneno = atoi(m_zyzfz.ckcdh);
char sLN[3];
sprintf(sLN,"%02d",laneno);
//Writekeyprofile(m_filename,"[RETURNINFO]",sLN,m_zyzfz.zyzhz);
::WritePrivateProfileString("RETURNINFO",sLN,m_zyzfz.zyzhz,m_filename);
}
else{
printf("the record fetched overed\n");
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
return 0;
}
}
}
else{
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
return 1;
}
}
else{
printf("SQL allocate handle error\n");
return 1;
}
return 1;
}
int SelectFLSJ(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
SQLRETURN retcode;
retcode = SQLAllocHandle(SQL_HANDLE_STMT,m_baseid->hdbc,&m_baseid->hstmt);
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
char m_sql[]="select ";
char m_sql2[100];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s",m_sql,m_tablename);
SQLCHAR m_qysjz[20];
SQLINTEGER m_sfdmz;
SQLINTEGER m_qysjzlen,m_sfdmzlen;
memset(m_qysjz,'\0',sizeof(m_qysjz));
retcode=SQLPrepare(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLExecDirect(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode=SQLBindCol(m_baseid->hstmt, 1, SQL_C_CHAR, m_qysjz, 20, &m_qysjzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode==SQL_SUCCESS)
{
sprintf(m_sfsj.qysjz,"%s",(unsigned char*)m_qysjz);
char year[4],month[2],day[2],hour[2],min[2],sec[2];
memcpy(sec,m_sfsj.qysjz+17,2);
sec[2]='\0';
m_sfsj.qysjz[17]='\0';
memcpy(min,m_sfsj.qysjz+14,2);
min[2]='\0';
m_sfsj.qysjz[14]='\0';
memcpy(hour,m_sfsj.qysjz+11,2);
hour[2]='\0';
m_sfsj.qysjz[11]='\0';
memcpy(day,m_sfsj.qysjz+8,2);
day[2]='\0';
m_sfsj.qysjz[8]='\0';
memcpy(month,m_sfsj.qysjz+5,2);
month[2]='\0';
m_sfsj.qysjz[5]='\0';
memcpy(year,m_sfsj.qysjz,4);
year[4]='\0';
m_sfsj.qysjz[0]='\0';
sprintf(m_sfsj.qysjz,"%s%s%s%s%s%s",year,month,day,hour,min,sec);
tyear = atoi(year);
tmon = atoi(month);
tday = atoi(day);
thour = atoi(hour);
tmin = atoi(min);
tsec = atoi(sec);
//Writekeyprofile(m_filename,"[STARTIME]","STARTIME",m_sfsj.qysjz);
::WritePrivateProfileString("STARTIME","STARTIME",m_sfsj.qysjz,m_filename);
}
else{
printf("the record fetched overed\n");
SQLFreeHandle(SQL_HANDLE_STMT, m_baseid->hstmt);
return 0;
}
}
}
else{
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
// memset(m_condition,0,sizeof(m_condition));
return 1;
}
}
else{
printf("SQL allocate handle error\n");
memset(m_condition,0,sizeof(m_condition));
return 1;
}
}
int SelectFL(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename,const char* m_filename2,int flag)
{
int count=0;
char ccount[4];
char station[100];
sprintf(ThisToll,"%s",m_condition);
SQLRETURN retcode;
retcode = SQLAllocHandle(SQL_HANDLE_STMT,m_baseid->hdbc,&m_baseid->hstmt);
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
char m_sql[] = "select ";
char m_sql2[100];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s",m_sql,m_tablename);
SQLCHAR m_sfzbh[5],m_sfzmc[11],m_xhzzz[5];
SQLINTEGER m_sfzbhlen,m_sfzmclen,m_xhzzzlen;
memset(m_sfzbh,'\0',sizeof(m_sfzbh));
memset(m_sfzmc,'\0',sizeof(m_sfzmc));
memset(m_xhzzz,'\0',sizeof(m_xhzzz));
retcode=SQLPrepare(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLExecDirect(m_baseid->hstmt,(unsigned char *)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode=SQLBindCol(m_baseid->hstmt, 1, SQL_C_CHAR, m_sfzbh, 5, &m_sfzbhlen);
retcode=SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_sfzmc, 11, &m_sfzmclen);
retcode=SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_xhzzz, 5, &m_xhzzzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_sfzz.sfzbh,"%s",(unsigned char*)m_sfzbh);
sprintf(m_sfzz.sfzmc,"%s",(unsigned char*)m_sfzmc);
//sprintf(station+count*sizeof(m_sfzz.sfzbh),"%s,",m_sfzz.sfzbh);
char tmp[6];
sprintf(tmp,"%s,",m_sfzz.sfzbh);
memcpy(station+count*strlen(tmp),tmp,sizeof(tmp));
sprintf(ccount,"%d",++count);
DatabaseID m_tbase = *m_baseid;
SelectBZLJB(&m_tbase,"*","BZYZLJBZ",m_sfzz.sfzbh,m_filename,m_filename2,flag);
/*
Writekeyprofile(m_filename,"[TollDefinition]",m_sfzz.sfzbh,m_sfzz.sfzmc);
Writekeyprofile(m_filename,"[WayInfo]","TOLLNAME",station);
Writekeyprofile(m_filename,"[WayInfo]","TOLLNUM",ccount);
*/
}
else{/*
sprintf(ccount,"%d",count);
Writekeyprofile(m_filename,"[WayInfo]","TOLLNUM",ccount);
*/
printf("the record fetched overed\n");
SQLFreeHandle(SQL_HANDLE_STMT, m_baseid->hstmt);
return 0;
}
}
}
else{
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
//memset(m_condition,0,sizeof(m_condition));
return 1;
}
}
else{
printf("SQL allocate handle error\n");
//memset(m_condition,0,sizeof(m_condition));
return 1;
}
return 1;
}
int SelectBZLJB(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename,const char* m_filename2,int flag)
{
int count = 0;
char m_entry[5];
memset(m_entry,'\0',sizeof(m_entry));
SQLRETURN retcode;
retcode = SQLAllocHandle(SQL_HANDLE_STMT,m_baseid->hdbc,&m_baseid->hstmt);
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
char m_sql[]="select ";
char m_sql2[100];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s WHERE qszhz = '%s'",m_sql,m_tablename,m_condition);
SQLCHAR m_dyrqz[20],m_qszhz[5],m_zzzhz[5],m_yzbhz[3],m_rkzhz[5],m_ckzhz[5];
SQLINTEGER m_dyrqzlen,m_qszhzlen,m_zzzhzlen,m_yzbhzlen,m_rkzhzlen,m_ckzhzlen;
memset(m_dyrqz,'\0',sizeof(m_dyrqz));
memset(m_qszhz,'\0',sizeof(m_qszhz));
memset(m_zzzhz,'\0',sizeof(m_zzzhz));
memset(m_yzbhz,'\0',sizeof(m_yzbhz));
memset(m_rkzhz,'\0',sizeof(m_rkzhz));
memset(m_ckzhz,'\0',sizeof(m_ckzhz));
retcode = SQLPrepare(m_baseid->hstmt,(unsigned char*)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLExecDirect(m_baseid->hstmt,(unsigned char*)m_sql2,strlen(m_sql2));
if(retcode == SQL_SUCCESS||retcode == SQL_SUCCESS_WITH_INFO)
{
retcode = SQLBindCol(m_baseid->hstmt, 1, SQL_C_CHAR, m_dyrqz, 20, &m_dyrqzlen);
retcode = SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_qszhz, 5, &m_qszhzlen);
retcode = SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_zzzhz, 5, &m_zzzhzlen);
retcode = SQLBindCol(m_baseid->hstmt, 4, SQL_C_CHAR, m_yzbhz, 3, &m_yzbhzlen);
retcode = SQLBindCol(m_baseid->hstmt, 5, SQL_C_CHAR, m_rkzhz, 5, &m_rkzhzlen);
retcode = SQLBindCol(m_baseid->hstmt, 6, SQL_C_CHAR, m_ckzhz, 5, &m_ckzhzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_yzljb.dyrqz,"%s",(unsigned char*)m_dyrqz);
sprintf(m_yzljb.qszhz,"%s",(unsigned char*)m_qszhz);
sprintf(m_yzljb.zzzhz,"%s",(unsigned char*)m_zzzhz);
sprintf(m_yzljb.yzbhz,"%02d",atoi((char*)m_yzbhz));
sprintf(m_yzljb.rkzhz,"%s",(unsigned char*)m_rkzhz);
sprintf(m_yzljb.ckzhz,"%s",(unsigned char*)m_ckzhz);
if(strcmp(m_yzljb.qszhz,m_entry))
{
total_fee1 = total_fee2 = total_fee3 = total_fee4 = total_fee5 = 0;
ntotal_fee1 = ntotal_fee2 = ntotal_fee3 = ntotal_fee4 = ntotal_fee5 = 0;
sprintf(m_entry,"%s",m_yzljb.rkzhz);
//if(count!=0)
}
DatabaseID base = *m_baseid;
if(!flag)
{
SelectOFLDB(&base,"*","BZSFBZDY",m_yzljb.qszhz,m_yzljb.rkzhz,m_yzljb.ckzhz,m_filename);
SelectNFLDB(&base,"*","BZXFLDYB",m_yzljb.qszhz,m_yzljb.rkzhz,m_yzljb.ckzhz,m_filename2);
}
else SelectNFLDB(&base,"*","BZXFLDYB",m_yzljb.qszhz,m_yzljb.rkzhz,m_yzljb.ckzhz,m_filename2);
count++;
}
else{
printf("the record fetched overed\n");
SQLFreeHandle(SQL_HANDLE_STMT, m_baseid->hstmt);
return 0;
}
}
}
else{
SQLFreeHandle(SQL_HANDLE_STMT,m_baseid->hstmt);
//memset(m_condition,0,sizeof(m_condition));
return 1;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -