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

📄 jeah_datadlg.cpp

📁 图书管理系统
💻 CPP
📖 第 1 页 / 共 3 页
字号:
										}
		    	   else
				   {				
			    		sql="INSERT INTO 借书表(卡号,姓名,书号,书名,借出时间,最后限期)";
	 		    		sql+="VALUES(";
						sql+=m_kanum+",'"+m_name+"',"+m_booknum+",'"+m_bookname+"',"+"GETDATE(),GETDATE()+30)";
						sqlstr="UPDATE 书库表 SET 借出数 = 借出数 + 1 WHERE 书号 = ";
						sqlstr+=m_booknum;	
						sqlupd="update 读者表 set 注销=1 where 卡号=";
						sqlupd+=m_kanum;
						strcpy(d,sqlupd.GetBuffer(sqlupd.GetLength()));
						strcpy(b,sql.GetBuffer(sql.GetLength()));
						strcpy(c,sqlstr.GetBuffer(sqlstr.GetLength()));
						rc=SQLAllocStmt(hdbc,phstmt);
						rc=SQLExecDirect(*phstmt,(UCHAR FAR*)b,SQL_NTS);
						rc1=SQLExecDirect(*phstmt,(UCHAR FAR*)c,SQL_NTS);
						SQLExecDirect(*phstmt,(UCHAR FAR*)d,SQL_NTS);
						if(rc==SQL_SUCCESS&&rc1==SQL_SUCCESS)
						{
						//	AfxMessageBox("系统已登记!");
								MsgeBox mb;
								mb.m_msge=_T("\n系统已登记!");
								UpdateData(false);
								mb.DoModal();
							m_kanum=_T("");
							m_name=_T("");
							m_booknum=_T("");
							m_bookname=_T("");
							UpdateData(false);
							GetDlgItem(IDC_KANUM)->SetFocus();
						}
						
						else 
						{
						//	AfxMessageBox("failed!");
								MsgeBox mb;
								mb.m_msge=_T("\nfailed!");
								UpdateData(false);
								mb.DoModal();
						}
				   }				   
				}	
				else
				{						
				//	AfxMessageBox("该书号为空号,请重新输入!");	
						MsgeBox mb;
								mb.m_msge=_T("该书号为空号\n\n请重新输入!");
								UpdateData(false);
								mb.DoModal();				
		            GetDlgItem(IDC_BKNUM)->SetFocus();
					i=1;
				}
			}  ////////////////////////////
		   else
			{					
				//AfxMessageBox("请正确输入书号与书名!");	
				MsgeBox mb;
				mb.m_msge=_T("\n请正确输入书号与书名");
				UpdateData(false);
				mb.DoModal();												
				GetDlgItem(IDC_BKNUM)->SetFocus();
				i=1;
			}
		 }
		}
		}
		}



		}//else			
		}	
		else
		{			
		//	AfxMessageBox("该卡号为空号,请重新输入!");
				MsgeBox mb;
				mb.m_msge=_T("\n该卡号为空号\n请重新输入!");
				UpdateData(false);
				mb.DoModal();				
		    GetDlgItem(IDC_KANUM)->SetFocus(); 
			i=1;
		} 
	}
	else
	{
	//	AfxMessageBox("请正确输入!");
		MsgeBox mb;
				mb.m_msge=_T("\n请正确输入!");
				UpdateData(false);
				mb.DoModal();				
		GetDlgItem(IDC_KANUM)->SetFocus();
		i=1;
	}
    sqlchk1.ReleaseBuffer(sqlchk1.GetLength());
	sqlstr.ReleaseBuffer(sqlstr.GetLength());
	sqlchk2.ReleaseBuffer(sqlchk2.GetLength());
	sql.ReleaseBuffer(sql.GetLength());
	free(b1);
	free(rgbValue);
	free(pcbValue);	
	free(b2);
	free(c);
	free(phstmt);
	free(b);
	free(d);
	if(i=1)
	{
		char sourcename[30],username[10],password[10];
		strcpy(sourcename,"jeah_data_1");
		strcpy(username,"sa");
		strcpy(password,"jeah");
		SQLDisconnect(hdbc);
		SQLFreeConnect(hdbc);
		SQLFreeEnv(hdbc);
		SQLAllocEnv(&henv);
		SQLAllocConnect(henv,&hdbc);
		SQLConnect(hdbc,(UCHAR*)sourcename,SQL_NTS,(UCHAR*)username,
				                 SQL_NTS,(UCHAR*)password,SQL_NTS);
	}

 }
	else 
	{
		if(len_bck==2)
		{///////////////////////////////
	CString	sql;
	CString sqlstr;
	CString sqlchk2;
	CString sqlchk1;
	CString sqlcnt;
	CString sqlupd;
	CString sqlupd1;
	CString value;
	CString msge;
	double count;
	char *b;
	char *c;
	char * b2;
	char * b1;
	char *d;
	char *f;
	char*g;
	char *rgbValue;
	SDWORD FAR *pcbValue;
	d=(char*)malloc(200); 
	b=(char*)malloc(200); 
	c=(char*)malloc(200);
	b2=(char*)malloc(200);
	b1=(char*)malloc(200);
	f=(char*)malloc(200);
	g=(char*)malloc(200);
	phstmt=(HSTMT FAR *)malloc(sizeof(HSTMT FAR));
	rgbValue=(char*)malloc(200);
	pcbValue=(SDWORD FAR*)malloc(sizeof(SDWORD FAR));
	UpdateData(true);
	sqlchk1="select 姓名 from 借书表 where 卡号="+m_kanum;
	strcpy(b1,sqlchk1.GetBuffer(sqlchk1.GetLength()));
//	AfxMessageBox(b1);
 	SQLAllocStmt(hdbc,phstmt);
	rc=SQLExecDirect(*phstmt,(UCHAR FAR *)b1,SQL_NTS);
	if(rc==SQL_SUCCESS)
	{
	    SQLFetch(*phstmt);
		rc=SQLGetData(*phstmt,1,SQL_C_CHAR,rgbValue,200,pcbValue);
		if(rc==SQL_SUCCESS) 
		{
		//	AfxMessageBox("haha");
			if(m_name!=rgbValue)
			{
				//		AfxMessageBox("姓名与卡号不匹配,请重新输入!");
							MsgeBox mb;
				mb.m_msge=_T("\n姓名与卡号不匹配\n请重新输入!!");
				UpdateData(false);
				mb.DoModal();				
						GetDlgItem(IDC_KANUM)->SetFocus();
						i=1;
			}
			   
			
			else
			{				
				sqlchk2="select 书名 from 借书表 where 书号="+m_booknum;
				strcpy(b2,sqlchk2.GetBuffer(sqlchk2.GetLength()));
 				SQLAllocStmt(hdbc,phstmt);
				rc=SQLExecDirect(*phstmt,(UCHAR FAR *)b2,SQL_NTS);
				if(rc==SQL_SUCCESS)
			   {
			        SQLFetch(*phstmt);
				rc=SQLGetData(*phstmt,1,SQL_C_CHAR,rgbValue,200,pcbValue);
				if(rc==SQL_SUCCESS) 
				{				
		        	        if(m_bookname!=rgbValue)
							{
				    	  	//	AfxMessageBox("书名与书号不匹配,请重新输入!!!!!");
								MsgeBox mb;
								mb.m_msge=_T("\n书名与书号不匹配\n请重新输入!");
								UpdateData(false);
								mb.DoModal();				
				        		GetDlgItem(IDC_KANUM)->SetFocus();
								i=1;
			    
							}	
		    				else         
							{
								sql="select count(*) from 借书表 AS Expr1 where 卡号=";
								sql+=m_kanum;
								sql+=" and 书号=";
								sql+=m_booknum;
								strcpy(b,sql.GetBuffer(sql.GetLength()));	
							//	AfxMessageBox(b);
							    rc2=SQLAllocStmt(hdbc,phstmt);
								rc2=SQLExecDirect(*phstmt,(UCHAR FAR*)b,SQL_NTS);								
								SQLFetch(*phstmt);
								rc2=SQLGetData(*phstmt,1,SQL_C_CHAR,rgbValue,200,pcbValue);	
								if(strcmp(rgbValue,"0")==1)
								{
									
										char sourcename[30],username[10],password[10];
										strcpy(sourcename,"jeah_data_1");
										strcpy(username,"sa");
										strcpy(password,"jeah");
										SQLDisconnect(hdbc);
										SQLFreeConnect(hdbc);
										SQLFreeEnv(hdbc);
										SQLAllocEnv(&henv);
										SQLAllocConnect(henv,&hdbc);
										SQLConnect(hdbc,(UCHAR*)sourcename,SQL_NTS,(UCHAR*)username,
												 SQL_NTS,(UCHAR*)password,SQL_NTS);
	
								sqlcnt="select datediff(day,最后限期,getdate()) from 借书表 where 卡号=";
								sqlcnt+=m_kanum; 
								strcpy(d,sqlcnt.GetBuffer(sqlcnt.GetLength()));								
							    rc2=SQLAllocStmt(hdbc,phstmt);
								rc2=SQLExecDirect(*phstmt,(UCHAR FAR*)d,SQL_NTS);								
								SQLFetch(*phstmt);
								rc2=SQLGetData(*phstmt,1,SQL_C_CHAR,rgbValue,200,pcbValue);								
								count=atoi(rgbValue);
                                value.Format("%.0f",count);
								msge="你的书超期";
								msge+=value;
								msge+="天\n";
								if(count>0)
								{
							    	count=count*0.5;									
									value.Format("%.1f",count);
									msge+="将被扣除";
									msge+=value;
									msge+="元";
									//AfxMessageBox(msge);
									MsgeBox mb;
									mb.m_msge=_T(msge);
									UpdateData(false);
									mb.DoModal();				
									sqlupd="update 读者表 set 余额=余额-";
									sqlupd+=value;								
									sqlupd+=" where 卡号=";
									sqlupd+=m_kanum;
								//	AfxMessageBox(sqlupd);
									strcpy(f,sqlupd.GetBuffer(sqlupd.GetLength()));								
									rc2=SQLAllocStmt(hdbc,phstmt);
									rc2=SQLExecDirect(*phstmt,(UCHAR FAR*)f,SQL_NTS);
									if(rc2!=SQL_SUCCESS) AfxMessageBox("shit!!");
								}
			    				sql="delete from 借书表  where 卡号=";								
								sql+=m_kanum;							
								sqlstr="UPDATE 书库表 SET 借出数 = 借出数 - 1 WHERE 书号 = ";		
								sqlstr+=m_booknum; 
								sqlupd1="update 读者表 set 注销=0 where 卡号 =";
								sqlupd1+=m_kanum;
								strcpy(g,sqlupd1.GetBuffer(sqlupd1.GetLength()));
								strcpy(b,sql.GetBuffer(sql.GetLength()));
								strcpy(c,sqlstr.GetBuffer(sqlstr.GetLength()));	
								//AfxMessageBox(b);
								rc1=SQLAllocStmt(hdbc,phstmt);
								rc1=SQLExecDirect(*phstmt,(UCHAR FAR*)b,SQL_NTS);
								if(rc==SQL_SUCCESS) 
								{								
									rc1=SQLAllocStmt(hdbc,phstmt);
									rc1=SQLExecDirect(*phstmt,(UCHAR FAR*)c,SQL_NTS);
									if(rc1==SQL_SUCCESS)
									{
										SQLAllocStmt(hdbc,phstmt);
										rc1=SQLExecDirect(*phstmt,(UCHAR FAR*)g,SQL_NTS);
										if(rc1==SQL_SUCCESS)
										{
										//	AfxMessageBox("系统已登记!");
												MsgeBox mb;
								mb.m_msge=_T("\n系统已登记!");
								UpdateData(false);
								mb.DoModal();				
											m_kanum=_T("");
											m_name=_T("");
											m_booknum=_T("");
											m_bookname=_T("");
											UpdateData(false);
											GetDlgItem(IDC_KANUM)->SetFocus();
										}
									}															         
									else AfxMessageBox("failed!!!!!!!");
								}

								else
								{
								   //AfxMessageBox("failed!");
								   				MsgeBox mb;
								mb.m_msge=_T("\nfailed!");
								UpdateData(false);
								mb.DoModal();			
								}
								}
								else
								{ 
								   //AfxMessageBox("不存在该记录!!");
								   			MsgeBox mb;
								mb.m_msge=_T("\n不存在该记录!!");
								UpdateData(false);
								mb.DoModal();			
								}
							}//AA				
				
				}////////////////////////////////////////////                                   
                 else
				 {
					 i=1;
				//	 AfxMessageBox("请正确输入书名和书号!");
					   			MsgeBox mb;
								mb.m_msge=_T("\n请正确输入书名和书号!!");
								UpdateData(false);
								mb.DoModal();			
				 }
			
		   }///////////////////////kkkkk	
		else//CC
			{
						
			//	AfxMessageBox("空号!");
					MsgeBox mb;
								mb.m_msge=_T("\n空号!");
								UpdateData(false);
								mb.DoModal();			
				i=1;	
		        GetDlgItem(IDC_BKNUM)->SetFocus();
			}//CC
		}/////////////////////////////////////dddddhhhhhhhh
	}		
		else 
		{
		//	AfxMessageBox("请正确输入姓名和卡号!");
				MsgeBox mb;
				mb.m_msge=_T("\n请正确输入姓名和卡号!");
								UpdateData(false);
								mb.DoModal();		
			i=1;
		}
	
	
	}
	else
	{
	//	AfxMessageBox("请正确输入!");
			MsgeBox mb;
				mb.m_msge=_T("\n请正确输入!");
								UpdateData(false);
								mb.DoModal();		
		GetDlgItem(IDC_KANUM)->SetFocus();
		i=1;
	}
   sqlchk1.ReleaseBuffer(sqlchk1.GetLength());
	sqlstr.ReleaseBuffer(sqlstr.GetLength());
	sqlchk2.ReleaseBuffer(sqlchk2.GetLength());
	sql.ReleaseBuffer(sql.GetLength());
	sqlcnt.ReleaseBuffer(sqlcnt.GetLength());
	sqlupd.ReleaseBuffer(sqlupd.GetLength());
	free(b1);
	free(rgbValue);
	free(pcbValue);	
	free(b2);
	free(c);
	free(phstmt);
	free(d);
	free(f);
	free(b);
	free(g);
	if(i=1)

⌨️ 快捷键说明

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