⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 database.cpp

📁 中间件编程,该程序用于传输客户端数据到服务器,可运行于WINDOWS2000,2003,XP,98等系统
💻 CPP
📖 第 1 页 / 共 5 页
字号:
   else{
	   printf("SQL allocate handle error\n");
	   //memset(m_condition,0,sizeof(m_condition));
	   return 1;
   }
   return 1;
}

int SelectOFLDB(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* rkzh,char* ljrk,char* ljck,const char* m_filename)
{
   char svm[3];
   memset(svm,'\0',sizeof(svm));
   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 CKZBH = '%s' AND RKZBH = '%s'",m_sql,m_tablename,ljck,ljrk);
      SQLCHAR m_qysjz[20],m_ckzbh[5],m_rkzbh[5],m_cxdmz[2];
	  SQLINTEGER m_sfjez,m_sfdmz;
	  SQLINTEGER m_qysjzlen,m_rkzbhlen,m_cxdmzlen,m_sfjezlen,m_sfdmzlen;
      char m_bzfl[5];
	  memset(m_qysjz,'\0',sizeof(m_qysjz));
	  memset(m_ckzbh,'\0',sizeof(m_rkzbh));
	  memset(m_cxdmz,'\0',sizeof(m_cxdmz));
      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);
//			retcode=SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_ckzbh, 20, &m_rkzbhlen);
			retcode=SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_rkzbh, 5, &m_rkzbhlen);
			retcode=SQLBindCol(m_baseid->hstmt, 4, SQL_C_CHAR, m_cxdmz, 2, &m_cxdmzlen);
			retcode=SQLBindCol(m_baseid->hstmt, 5, SQL_C_ULONG, &m_sfjez, sizeof(m_sfjez), &m_sfjezlen);
		    retcode=SQLBindCol(m_baseid->hstmt, 6, SQL_C_ULONG, &m_sfdmz, sizeof(m_sfdmz), &m_sfdmzlen);   
		  }
		  retcode = SQLFetch(m_baseid->hstmt);
		  while(retcode == SQL_SUCCESS)
		  {
		     sprintf(m_sfbz.qysjz,"%s",(unsigned char*)m_qysjz);
			 char year[4],month[2],day[2],hour[2],min[2],sec[2];
			 memcpy(sec,m_sfbz.qysjz+17,2);
             sec[2]='\0';
			 m_sfbz.qysjz[17]='\0';
			 memcpy(min,m_sfbz.qysjz+14,2);
			 min[2]='\0';
			 m_sfbz.qysjz[14]='\0';
			 memcpy(hour,m_sfbz.qysjz+11,2);
			 hour[2]='\0';
			 m_sfbz.qysjz[11]='\0';
			 memcpy(day,m_sfbz.qysjz+8,2);
			 day[2]='\0';
			 m_sfbz.qysjz[8]='\0';
			 memcpy(month,m_sfbz.qysjz+5,2);
			 month[2]='\0';
			 m_sfbz.qysjz[5]='\0';
			 memcpy(year,m_sfbz.qysjz,4);
			 year[4]='\0';
			 m_sfbz.qysjz[0]='\0';
//             sprintf(m_sfbz.qysjz,"%s%s%s%s%s%s",year,month,day,hour,min,sec);
//			 Writekeyprofile(m_filename,"[STARTIME]","STARTIME",m_sfbz.qysjz);
             if((tyear==atoi(year))&&(tmon==atoi(month))&&(tday==atoi(day))&&(thour==atoi(hour))&&(tmin==atoi(min))&&(tsec==atoi(sec)))
			 {
		      sprintf(m_sfbz.rkzbh,"%s",rkzh);
			  //m_sfbz.rkzbh[5]='\0';
			  sprintf(m_sfbz.cxdmz,"%s",(unsigned char*)m_cxdmz);
			  if(!strcmp(m_sfbz.cxdmz,"1"))
				  total_fee1 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"2"))
				  total_fee2 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"3"))
				  total_fee3 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"4"))
				  total_fee4 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"5"))
				  total_fee5 += (int)m_sfjez;
			  if(!strcmp(ThisToll,ljck))
			  {
			  char m_fee1[5],m_fee2[5],m_fee3[5],m_fee4[5],m_fee5[5];
			  sprintf(m_fee1,"%04d",total_fee1);
			  sprintf(m_fee2,"%04d",total_fee2);
			  sprintf(m_fee3,"%04d",total_fee3);
			  sprintf(m_fee4,"%04d",total_fee4);
			  sprintf(m_fee5,"%04d",total_fee5);

			  if(!strcmp(m_sfbz.cxdmz,"1"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee1);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee1,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"2"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee2);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee2,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"3"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee3);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee3,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"4"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee4);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee4,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"5"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee5);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee5,m_filename);
			  char serial[3];
			  sprintf(serial,"%d",(int)m_sfdmz);
			  //Writekeyprofile(m_filename,"[STARTIME]","SERIAL",serial);
			  ::WritePrivateProfileString("STARTIME","SERIAL",serial,m_filename);
			  }
			  retcode = SQLFetch(m_baseid->hstmt);
			 }
			 else{
			  sprintf(m_bzfl,"%04d",(int)m_sfjez);
			  //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_bzfl);
			  retcode = SQLFetch(m_baseid->hstmt); 
			 }
		  }
		  printf("the record fetched overed\n");
		  SQLFreeHandle(SQL_HANDLE_STMT, m_baseid->hstmt);
          //memset(m_condition,0,sizeof(m_condition));
		  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 SelectNFLDB(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* rkzh,char* ljrk,char* ljck,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 where CKZBH = '%s' AND RKZBH = '%s'",m_sql,m_tablename,ljck,ljrk);
      SQLCHAR m_qysjz[20],m_ckzbh[5],m_rkzbh[5],m_cxdmz[2];
	  SQLINTEGER m_sfjez,m_sfdmz;
	  SQLINTEGER m_qysjzlen,m_rkzbhlen,m_cxdmzlen,m_sfjezlen,m_sfdmzlen;
      char m_bzfl[5];
	  memset(m_qysjz,'\0',sizeof(m_qysjz));
	  memset(m_ckzbh,'\0',sizeof(m_rkzbh));
	  memset(m_cxdmz,'\0',sizeof(m_cxdmz));
      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);
//			retcode=SQLBindCol(m_baseid->hstmt, 2, SQL_C_CHAR, m_ckzbh, 20, &m_rkzbhlen);
			retcode=SQLBindCol(m_baseid->hstmt, 3, SQL_C_CHAR, m_rkzbh, 5, &m_rkzbhlen);
			retcode=SQLBindCol(m_baseid->hstmt, 4, SQL_C_CHAR, m_cxdmz, 2, &m_cxdmzlen);
			retcode=SQLBindCol(m_baseid->hstmt, 5, SQL_C_ULONG, &m_sfjez, sizeof(m_sfjez), &m_sfjezlen);
		    retcode=SQLBindCol(m_baseid->hstmt, 6, SQL_C_ULONG, &m_sfdmz, sizeof(m_sfdmz), &m_sfdmzlen);    
		  }
		  retcode = SQLFetch(m_baseid->hstmt);
		  if(retcode == SQL_SUCCESS)
		  {
		     sprintf(m_sfbz.qysjz,"%s",(unsigned char*)m_qysjz);
			 char year[5],month[2],day[2],hour[2],min[2],sec[2];
			 memcpy(sec,m_sfbz.qysjz+17,2);
             sec[2]='\0';
			 m_sfbz.qysjz[17]='\0';
			 memcpy(min,m_sfbz.qysjz+14,2);
			 min[2]='\0';
			 m_sfbz.qysjz[14]='\0';
			 memcpy(hour,m_sfbz.qysjz+11,2);
			 hour[2]='\0';
			 m_sfbz.qysjz[11]='\0';
			 memcpy(day,m_sfbz.qysjz+8,2);
			 day[2]='\0';
			 m_sfbz.qysjz[8]='\0';
			 memcpy(month,m_sfbz.qysjz+5,2);
			 month[2]='\0';
			 m_sfbz.qysjz[5]='\0';
			 memcpy(year,m_sfbz.qysjz,4);
			 year[4]='\0';
			 m_sfbz.qysjz[0]='\0';
             sprintf(m_sfbz.qysjz,"%s%s%s%s%s%s",year,month,day,hour,min,sec);
			 m_sfbz.sfdmz = (int)m_sfdmz;
			 char serial[3];
			 sprintf(serial,"%d",m_sfbz.sfdmz);
			 //Writekeyprofile(m_filename,"[STARTIME]","STARTIME",m_sfbz.qysjz);
			 //Writekeyprofile(m_filename,"[STARTIME]","SERIAL",serial); 
			 ::WritePrivateProfileString("STARTIME","STARTIME",m_sfbz.qysjz,m_filename);
			 ::WritePrivateProfileString("STARTIME","SERIAL",serial,m_filename);
		  }
		  while(retcode == SQL_SUCCESS)
		  {
		      sprintf(m_sfbz.rkzbh,"%s",(char*)rkzh);
			  //m_sfbz.rkzbh[5]='\0';
			  sprintf(m_sfbz.cxdmz,"%s",(unsigned char*)m_cxdmz);
			  sprintf(m_bzfl,"%04d",(int)m_sfjez);
//			  Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_bzfl);
		      sprintf(m_sfbz.rkzbh,"%s",rkzh);
			  //m_sfbz.rkzbh[5]='\0';
			  sprintf(m_sfbz.cxdmz,"%s",(unsigned char*)m_cxdmz);
			  if(!strcmp(m_sfbz.cxdmz,"1"))
				  ntotal_fee1 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"2"))
				  ntotal_fee2 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"3"))
				  ntotal_fee3 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"4"))
				  ntotal_fee4 += (int)m_sfjez;
			  if(!strcmp(m_sfbz.cxdmz,"5"))
				  ntotal_fee5 += (int)m_sfjez;
			  if(!strcmp(ThisToll,ljck))
			  {
			  char m_fee1[5],m_fee2[5],m_fee3[5],m_fee4[5],m_fee5[5];
			  sprintf(m_fee1,"%04d",ntotal_fee1);
			  sprintf(m_fee2,"%04d",ntotal_fee2);
			  sprintf(m_fee3,"%04d",ntotal_fee3);
			  sprintf(m_fee4,"%04d",ntotal_fee4);
			  sprintf(m_fee5,"%04d",ntotal_fee5);

			  if(!strcmp(m_sfbz.cxdmz,"1"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee1);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee1,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"2"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee2);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee2,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"3"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee3);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee3,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"4"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee4);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee4,m_filename);
			  if(!strcmp(m_sfbz.cxdmz,"5"))
                //Writekeyprofile(m_filename,m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee5);
				::WritePrivateProfileString(m_sfbz.rkzbh,m_sfbz.cxdmz,m_fee5,m_filename);
			  }
			  retcode = SQLFetch(m_baseid->hstmt);
		      //Sleep(100);
		  }
		  printf("the record fetched overed\n");
		  SQLFreeHandle(SQL_HANDLE_STMT, m_baseid->hstmt);
          //memset(m_condition,0,sizeof(m_condition));
		  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 SelectOWN(DatabaseID *m_baseid,char* m_fields,char* m_tablename,char* m_condition,const char* m_filename)
{
   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 zzzhz = '%s' order by qszhz",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))
			   {
			       if(count!=0)
				   {
				      char t_count[3];
					  char t_sec[6];
					  sprintf(t_sec,"%s",m_entry);
					  sprintf(t_count,"%d",count);
					  //Writekeyprofile(m_filename,t_sec,"NUMBER",t_count);
					  ::WritePrivateProfileString(t_sec,"NUMBER",t_count,m_filename);
					  count = 0;
				   }
				   sprintf(m_entry,"%s",m_yzljb.qszhz);
			   }
			   
			   
			   count++;
               char m_count[3],section[7],value[8];
			   sprintf(section,"%s",m_yzljb.qszhz);
			   sprintf(m_count,"%d",count);
			   sprintf(value,"%s,%s",m_yzljb.yzbhz,m_yzljb.ckzhz);
			   //Writekeyprofile(m_filename,section,m_count,value);
			   ::WritePrivateProfileString(section,m_count,value,m_filename);
			}
			else{
			   char number[3],m_sec[6];
			   sprintf(m_sec,"%s",m_yzljb.rkzhz);
			   sprintf(number,"%d",count);
			   //Writekeyprofile(m_filename,m_sec,"NUMBER",number); 
			   ::WritePrivateProfileString(m_sec,"NUMBER",number,m_filename);
			   printf("the record 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -