?? database.cpp
字號:
int SelectCwsjz(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_cwsjz[6];
SQLINTEGER m_cwsjzlen;
memset(m_cwsjz,'\0',sizeof(m_cwsjz));
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_cwsjz, 6, &m_cwsjzlen);
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_cwsj.cwsjz,"%s",(unsigned char*)m_cwsjz);
//WritePrivateProfileString(m_filename,"[STARTIME]","STARTIME",m_cwsj.cwsjz);
::WritePrivateProfileString("STARTIME","STARTIME",m_cwsj.cwsjz,m_filename);
}
else{
sprintf(g_cwsj,"%s",m_cwsj.cwsjz);
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");
//memset(m_condition,0,sizeof(m_condition));
return 1;
}
return 1;
}
int SelectSFZDB(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
int count=0;
char ccount[4];
char station[100];
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);
//Writekeyprofile(m_filename,"[TollDefinition]",m_sfzz.sfzbh,m_sfzz.sfzmc);
//Writekeyprofile(m_filename,"[WayInfo]","TOLLNAME",station);
//Writekeyprofile(m_filename,"[WayInfo]","TOLLNUM",ccount);
::WritePrivateProfileString("TollDefinition",m_sfzz.sfzbh,m_sfzz.sfzmc,m_filename);
::WritePrivateProfileString("WayInfo","TOLLNAME",station,m_filename);
::WritePrivateProfileString("WayInfo","TOLLNUM",ccount,m_filename);
}
else{
sprintf(ccount,"%d",count);
//Writekeyprofile(m_filename,"[WayInfo]","TOLLNUM",ccount);
::WritePrivateProfileString("WayInfo","TOLLNUM",ccount,m_filename);
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 SelectSFYDB(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
int count=0;
char SfyInfo[20];
char ccount[4];
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 SFZBH = '%s'",m_sql,m_tablename,m_condition);
SQLCHAR m_sfzbh[5],m_ygghz[6],m_ygzwz[11],m_ygmmz[9];
SQLINTEGER m_sfzbhlen,m_ygghzlen,m_ygxmzlen,m_ygxbzlen,m_ygzwzlen,m_ygmmzlen;
memset(m_sfzbh,'\0',sizeof(m_sfzbh));
memset(m_ygghz,'\0',sizeof(m_ygghz));
memset(m_ygmmz,'\0',sizeof(m_ygmmz));
memset(m_ygzwz,'\0',sizeof(m_ygzwz));
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_ygghz, 6, &m_ygghzlen);
retcode=SQLBindCol(m_baseid->hstmt, 4, SQL_C_CHAR, m_ygzwz, 11, &m_ygzwzlen);
retcode=SQLBindCol(m_baseid->hstmt, 5, SQL_C_CHAR, m_ygmmz, 9, &m_ygmmzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_sfyz.sfzbh,"%s",(unsigned char*)m_sfzbh);
sprintf(m_sfyz.ygghz,"%s",(unsigned char*)m_ygghz);
sprintf(m_sfyz.ygmmz,"%s",(unsigned char*)m_ygmmz);
if(!strcmp((const char*)m_ygzwz,"收費員"))
sprintf(m_sfyz.ygzwz,"%s","C");
else if(!strcmp((const char*)m_ygzwz,"維護員"))
sprintf(m_sfyz.ygzwz,"%s","S");
else if(!strcmp((const char*)m_ygzwz,"收費班長")||!strcmp((const char*)m_ygzwz,"班長"))
sprintf(m_sfyz.ygzwz,"%s","M");
else sprintf(m_sfyz.ygzwz,"%s","S");
sprintf(ccount,"%d",++count);
sprintf(SfyInfo,"{%s}%s%s",m_sfyz.ygghz,m_sfyz.ygmmz,m_sfyz.ygzwz);
//write to ini file
//Writekeyprofile(m_filename,"[info]",ccount,SfyInfo);
::WritePrivateProfileString("info",ccount,SfyInfo,m_filename);
//DatabaseID m_base = *m_baseid;
//SelectSfypb(&m_base,"*","BZSFYPBB",m_sfyz.ygghz);
}
else{
sprintf(ccount,"%d",count);
//Writekeyprofile(m_filename,"[info]","Number",ccount);
::WritePrivateProfileString("info","Number",ccount,m_filename);
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 SelectShift(DatabaseID *m_baseid,char* m_fields, char* m_tablename, char* m_condition,const char* m_filename)
{
int count = 0;
char ccount[2];
char today[25];
time_t longtime;
time(&longtime);
struct tm* curtime = localtime(&longtime);
int year = curtime->tm_year+1900;
int mon = curtime->tm_mon + 1;
int day = curtime->tm_mday;
int hour = curtime->tm_hour;
int min = curtime->tm_min;
int sec = curtime->tm_sec;
sprintf(today,"%04d-%02d-%02d %02d:%02d:%02d",year,mon,day,hour,min,sec);
//sprintf(today,"%02d/%02d/%04d",mon,day,year);
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[150];
memset(m_sql2,'\0',sizeof(m_sql2));
sprintf(m_sql2,"%s* from %s where QYRQZ = (select max(qyrqz) from BZBCDMDY where qyrqz <= '%s')",m_sql,m_tablename,today);
SQLCHAR m_bcdmz[2],m_bcmcz[11],m_qssjz[6],m_zzsjz[6],m_qyrqz[20];
memset(m_bcdmz,'\0',sizeof(m_bcdmz));
memset(m_bcmcz,'\0',sizeof(m_bcmcz));
memset(m_qssjz,'\0',sizeof(m_qssjz));
memset(m_zzsjz,'\0',sizeof(m_zzsjz));
memset(m_qyrqz,'\0',sizeof(m_qyrqz));
SQLINTEGER m_bcdmzlen, m_bcmczlen,m_qssjzlen,m_zzsjzlen,m_qyrqzlen;
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_qyrqz, 20, &m_qyrqzlen);
retcode=SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_bcdmz, 2, &m_bcdmzlen);
retcode=SQLBindCol(m_baseid->hstmt, 4, SQL_C_CHAR, m_qssjz, 6, &m_qssjzlen);
retcode=SQLBindCol(m_baseid->hstmt, 5, SQL_C_CHAR, m_zzsjz, 6, &m_zzsjzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(ccount,"%d",++count);
sprintf(m_bcdy.bcdmz,"%s",(unsigned char*)m_bcdmz);
sprintf(m_bcdy.zzsjz,"%s",(unsigned char*)m_zzsjz);
sprintf(m_bcdy.zzsjz,"%c%c%c%c",m_bcdy.zzsjz[0],m_bcdy.zzsjz[1],m_bcdy.zzsjz[3],m_bcdy.zzsjz[4]);
m_bcdy.zzsjz[4]='\0';
//Writekeyprofile(m_filename,"[WinInfo]",m_bcdy.bcdmz,m_bcdy.zzsjz);
::WritePrivateProfileString("WinInfo",m_bcdy.bcdmz,m_bcdy.zzsjz,m_filename);
}
else{
if(count == 0)
return 0;
printf("the record fetched overed\n");
sprintf(ccount,"%d",count);
sprintf(m_bcdy.qyrqz,"%s",(unsigned char*)m_qyrqz);
/*
char year[5],month[2],day[2];
memcpy(day,m_bcdy.qyrqz+8,2);
day[2]='\0';
m_bcdy.qyrqz[8]='\0';
memcpy(month,m_bcdy.qyrqz+5,2);
month[2]='\0';
m_bcdy.qyrqz[5]='\0';
memcpy(year,m_bcdy.qyrqz,4);
year[4]='\0';
m_bcdy.qyrqz[0]='\0';
sprintf(m_bcdy.qyrqz,"%s%s%s",year,month,day);
*/
char start_qyrq[20];
sprintf(start_qyrq,"%04d%02d%02d%02d%02d%02d",year,mon,day,hour,min,sec);
//Writekeyprofile(m_filename,"[WinInfo]","shift",ccount);
//Writekeyprofile(m_filename,"[WinInfo]","start",m_bcdy.qyrqz);
::WritePrivateProfileString("WinInfo","shift",ccount,m_filename);
::WritePrivateProfileString("WinInfo","start",start_qyrq,m_filename);
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 SelectAutho(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
char tmp[2];
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_sfqkz[9];
SQLINTEGER m_msdmz;
SQLINTEGER m_sfqkzlen,m_msdmzlen;
memset(m_sfqkz,'\0',sizeof(m_sfqkz));
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_sfqkz,9,&m_sfqkzlen);
retcode=SQLBindCol(m_baseid->hstmt, 2, SQL_C_ULONG, &m_msdmz, sizeof(m_msdmz), &m_msdmzlen);
}
while(1)
{
retcode = SQLFetch(m_baseid->hstmt);
if(retcode == SQL_SUCCESS)
{
sprintf(m_sqms.sfqkz,"%s",m_sfqkz);
sprintf(tmp,"%d",(int)m_msdmz);
//Writekeyprofile(m_filename,"[Autho]",m_sqms.sfqkz,tmp);
::WritePrivateProfileString("Autho",m_sqms.sfqkz,tmp,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;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -