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

📄 lcomm.cpp

📁 Mysql的处理
💻 CPP
字号:
#include "oradb.h"void C_MYSQL::DbLCOMMTest(){	S_LCOMM pIn8;	S_RESULT pOut8;	memset(&pIn8,0,sizeof(pIn8));		pIn8.SubId=2;	snprintf(pIn8.SGSNAddr,LEN_SGSNAddr + 1,"2");	memcpy(pIn8.CauseForRecordClosing,"111111",2);	memcpy(pIn8.RSN,"11111111",5);	memcpy(pIn8.LRSN,"11111111",5);	pIn8.SystemType=2;	pIn8.SGSNChange=2;	snprintf(pIn8.NodeId,LEN_NodeID+1,"2");	pIn8.RNC=2;	snprintf(pIn8.RecordExtensions,LEN_RecordExtensions+1,"2");	snprintf(pIn8.TableName,LEN_TABLENAME + 1,"LCOMM");	snprintf(pIn8.SortId,LEN_SORT+1,"2");		DbLCOMMInsert(&pIn8, &pOut8);}int C_MYSQL::DbLCOMMInsert(struct S_LCOMM* p, struct S_RESULT* pOut){	char szMsg[512];	char* TableName = p->TableName;	char* SeqId = p->SeqId;	int SubId = p->SubId;	char* SGSNAddr = p->SGSNAddr;	char* CauseForRecordClosing = p->CauseForRecordClosing;	char* RSN = p->RSN;	char* LRSN = p->LRSN;	char* RecordExtensions = p->RecordExtensions;	int SystemType = p->SystemType;	int SGSNChange = p->SGSNChange;	char *NodeId = p->NodeId;	int RNC = p->RNC;	char* SortId = p->SortId;	char szSQL[SQLMAX];			snprintf(szSQL, SQLMAX, "INSERT INTO %s ("					"SEQID,"				"SUBID,"				"SGSNADDR,"				"CAUSERECORDCLOSING,"				"RECORDSEQUENCENUMBER,"				"LOCALRECORDSEQUENCENUMBER,"				"SYSTEMTYPE,"				"SGSNCHANGE,"				"NODEID,"				"RNCUDVOLUMN,"				"RECORDEXTENSIONS"					",SORTID"				") VALUES("				"%s,"					"%d,'%s',%s,%s,"					"%s,%d,%d,'%s',%d,'%s',%s)",				TableName,				SeqId[0]==0?"NULL":SeqId,				SubId,SGSNAddr,				CauseForRecordClosing[0]==0?"NULL":CauseForRecordClosing,				RSN[0]==0?"NULL":RSN,			LRSN[0]==0?"NULL":LRSN,			SystemType,SGSNChange,NodeId,RNC,RecordExtensions, 			SortId[0]==0?"NULL":SortId);				#ifdef _DEBUG	logOra(sErrLog, szSQL);#endif		Lock();	int res = mysql_real_query(myConnect, szSQL, strlen(szSQL));	if(res != 0)	{		Unlock();		onError();		return -1;	}	Unlock();	return 0;}int C_MYSQL::DbLCOMMSelect(char* pInSzTableName, char* pInSzSeqId, struct S_LCOMM** pOutLChangeLocation, int * number, struct S_RESULT* pOut){	char szMsg[512];	char SeqId[LEN_SEQ + 1];	int SubId;	char SGSNAddr[45 + 1];	char CauseForRecordClosing[3];	char RSN[11];	char LRSN[11];	int SystemType;	int SGSNChange;	char NodeId[21];	char RecordExtensions[LEN_RecordExtensions];	int RNC;		char SortId[LEN_SORT+1];		struct S_LCOMM *pLCLOC = *pOutLChangeLocation;	int nNumber = 0;	char szSQL[SQLMAX];	char szSQL2[SQLMAX];	struct S_LCOMM* p2;	int j;	char * sz ;	short id[10];	if(pLCLOC != NULL)	{		return -1;	}	snprintf(szSQL2, SQLMAX, 		"SELECT COUNT(*) FROM %s WHERE SEQID=%s",		pInSzTableName, pInSzSeqId);	snprintf(szSQL, SQLMAX, 		"SELECT "		"SEQID,"		"SUBID," "SGSNADDR," "CAUSERECORDCLOSING," "RECORDSEQUENCENUMBER," "LOCALRECORDSEQUENCENUMBER," "SYSTEMTYPE," "SGSNCHANGE," "NODEID," "RNCUDVOLUMN," "RECORDEXTENSIONS"		",SORTID"		" FROM %s WHERE SEQID=%s",		pInSzTableName, pInSzSeqId);#ifdef LOG_SELECT	logOra(sErrLog, szSQL);#endif	*number = 0;	Lock();	nNumber = DbCount(szSQL2, myConnect);	if(nNumber <= 0)	{		Unlock();		* number = 0;		return 0;	}	sz = (char*)malloc(SIZE_S_LCOMM*nNumber);	memset(sz, 0, SIZE_S_LCOMM*nNumber);	mysql_real_query(myConnect, szSQL, strlen(szSQL));	MYSQL_RES *res_ptr = mysql_store_result(myConnect);	if (res_ptr == NULL) 	{		Unlock();		onError();		return -1;	}	MYSQL_ROW sqlrow;#ifdef _DEBUG	logOra(sErrLog, "CURSOR...");#endif	for(j=0;j<nNumber;j++)	{		sqlrow = mysql_fetch_row(res_ptr);						p2 = (struct S_LCOMM*)&sz[SIZE_S_LCOMM*j];				if(sqlrow[0] != NULL) memcpy(p2->SeqId, sqlrow[0], 20);		if(sqlrow[1] != NULL) p2->SubId = atoi(sqlrow[1]);		if(sqlrow[2] != NULL) memcpy(p2->SGSNAddr, sqlrow[2], 45);		if(sqlrow[3] != NULL) memcpy(p2->CauseForRecordClosing, sqlrow[3], 2);		if(sqlrow[4] != NULL) memcpy(p2->RSN, sqlrow[4], 10);		if(sqlrow[5] != NULL) memcpy(p2->LRSN, sqlrow[5], 10);		if(sqlrow[6] != NULL) p2->SystemType = atoi(sqlrow[6]);		if(sqlrow[7] != NULL) p2->SGSNChange = atoi(sqlrow[7]);		if(sqlrow[8] != NULL) memcpy(p2->NodeId, sqlrow[8], 20);		if(sqlrow[9] != NULL) p2->RNC =atoi(sqlrow[9]);		if(sqlrow[10] != NULL) memcpy(p2->RecordExtensions, sqlrow[10], LEN_RecordExtensions);		if(sqlrow[11] != NULL) memcpy(p2->SortId, sqlrow[11], LEN_SORT);		memcpy(p2->TableName, pInSzTableName, LEN_TABLENAME);			}	mysql_free_result(res_ptr);		Unlock();		* pOutLChangeLocation = (struct S_LCOMM*)sz;	* number = nNumber;	return 0;}

⌨️ 快捷键说明

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