llotv.cpp

来自「Mysql的处理」· C++ 代码 · 共 349 行

CPP
349
字号
#include "oradb.h"void C_MYSQL::DbLLOTVTest(){	S_LLOTV pIn7;	S_RESULT pOut7;	memset(&pIn7,0,sizeof(pIn7));	pIn7.ChangeCondition=2;	memcpy(pIn7.DataVolumeGPRSUp,"111111111",5);	memcpy(pIn7.DataVolumeGPRSDown,"111111111",5);	snprintf(pIn7.ChangeTime,LEN_DATETIME + 1,"2");	memcpy(pIn7.QoSNUMTS,"1111111111",5);	memcpy(pIn7.QoSNMeanThroughput,"1111",2);	memcpy(pIn7.QoSNPeakThrougput,"11111",2);	pIn7.QoSNDelay=2;	pIn7.QoSNPrecedence=2;	pIn7.QoSNReliability=2;	memcpy(pIn7.QoSRUMTS,"11111111111",5);	memcpy(pIn7.QoSRMeanThroughput,"11111",2);	memcpy(pIn7.QoSRPeakThrougput,"1111111",2);	pIn7.QoSRDelay=2;	pIn7.QoSRPrecedence=2;	pIn7.QoSRReliability=2;	snprintf(pIn7.TableName,LEN_TABLENAME + 1,"LLOTV");		snprintf(pIn7.SortId,LEN_SORT+1,"2");	DbLLOTVInsert(&pIn7,&pOut7);}int C_MYSQL::DbLLOTVInsert(struct S_LLOTV* pIn, struct S_RESULT* pOut){	char szMsg[512];	char* TableName = (char*)pIn->TableName;	char* SeqId = (char*)pIn->SeqId;	int ChangeCondition = pIn->ChangeCondition;	char* DataVolumeGPRSUp = pIn->DataVolumeGPRSUp;	char* DataVolumeGPRSDown = pIn->DataVolumeGPRSDown;	char* ChangeTime = pIn->ChangeTime;	char* QoSNUMTS = pIn->QoSNUMTS;	char* QoSNMeanThroughput = pIn->QoSNMeanThroughput;	char* QoSNPeakThrougput = pIn->QoSNPeakThrougput;	int QoSNDelay = pIn->QoSNDelay;	int QoSNPrecedence = pIn->QoSNPrecedence;	int QoSNReliability = pIn->QoSNReliability;	char* QoSRUMTS = pIn->QoSRUMTS;	char* QoSRMeanThroughput = pIn->QoSRMeanThroughput;	char* QoSRPeakThrougput = pIn->QoSRPeakThrougput;	int QoSRDelay = pIn->QoSRDelay;	int QoSRPrecedence = pIn->QoSRPrecedence;	int QoSRReliability = pIn->QoSRReliability;	char* SortId = pIn->SortId;	char szSQL[SQLMAX];/*#ifdef _DEBUG	snprintf(szSQL, SQLMAX, "INSERT INTO %s (""SEQID,""CHANGECONDITION,""DATAVLOLUMNGPRSUP," "DATAVOLUMNGPRSDOWN," "CHANGETIME," "QOSNUMTS," "QOSNMEANTHROUGHT," "QOSNPEAKTHROUGHT," "QOSNDELAY," "QOSNRECEDENCE," "QOSNRELIABILITY," "QOSRUMTS," "QOSMEANTHROUGHPUT," "QOSPEAKTHROUGHPUT," "QOSRDELAY," "QOSPRECEDENCE," "QOSRRELIABILITY"				") VALUES("					"'%s',"					"%d,'%s','%s',TO_DATE('%s','YYYYMMDDHH24MISS'),"					"'%s',"					"'%s','%s',%d,%d,%d,"					"'%s',"					"'%s','%s',%d,%d,%d"					")",				TableName,				SeqId,ChangeCondition,DataVolumeGPRSUp,DataVolumeGPRSDown,ChangeTime,QoSNUMTS,QoSNMeanThroughput,QoSNPeakThrougput,QoSNDelay,QoSNPrecedence,QoSNReliability,QoSRUMTS,QoSRMeanThroughput,QoSRPeakThrougput,QoSRDelay,QoSRPrecedence,QoSRReliability);	logOra(sErrLog, szSQL);#endif*/snprintf(szSQL, SQLMAX, "INSERT INTO %s ("				"SEQID,""CHANGECONDITION,""DATAVLOLUMNGPRSUP," "DATAVOLUMNGPRSDOWN," "CHANGETIME," "QOSNUMTS," "QOSNMEANTHROUGHT," "QOSNPEAKTHROUGHT," "QOSNDELAY," "QOSNRECEDENCE," "QOSNRELIABILITY," "QOSRUMTS," "QOSMEANTHROUGHPUT," "QOSPEAKTHROUGHPUT," "QOSRDELAY," "QOSPRECEDENCE," "QOSRRELIABILITY"			") VALUES("						"%s,%d,%s,%s,'%s',"					"'%s',"					"%s,%s,%d,%d,%d,"					"'%s',"					"%s,%s,%d,%d,%d"					")",				TableName,				SeqId[0]==0?"NULL":SeqId,ChangeCondition,DataVolumeGPRSUp[0]==0?"NULL":DataVolumeGPRSUp,DataVolumeGPRSDown[0]==0?"NULL":DataVolumeGPRSDown,ChangeTime,QoSNUMTS,QoSNMeanThroughput[0]==0?"NULL":QoSNMeanThroughput,QoSNPeakThrougput[0]==0?"NULL":QoSNPeakThrougput,QoSNDelay,QoSNPrecedence,QoSNReliability,QoSRUMTS,QoSRMeanThroughput[0]==0?"NULL":QoSRMeanThroughput,QoSRPeakThrougput[0]==0?"NULL":QoSRPeakThrougput,QoSRDelay,QoSRPrecedence,QoSRReliability);#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::DbLLOTVSelect(char* pInSzTableName, char* pInSzSeqId, struct S_LLOTV** pOutLChangeLocation, int * number, struct S_RESULT* pOut){	char szMsg[512];	char SeqId[LEN_SEQ + 1];	int ChangeCondition;	char DataVolumeGPRSUp[17];	char DataVolumeGPRSDown[17];	char ChangeTime[LEN_DATETIME + 1];	char QoSNUMTS[24 + 1];	char QoSNMeanThroughput[3];	char QoSNPeakThrougput[3];	int QoSNDelay;	int QoSNPrecedence;	int QoSNReliability;	char QoSRUMTS[24 + 1];	char QoSRMeanThroughput[3];	char QoSRPeakThrougput[3];	int QoSRDelay;	int QoSRPrecedence;	int QoSRReliability;	char SortId[LEN_SORT+1];		struct S_LLOTV *pLCLOC = *pOutLChangeLocation;	int nNumber = 0;	char szSQL[SQLMAX];	char szSQL2[SQLMAX];	struct S_LLOTV* p2;	int j;	char * sz ;	short id[20];	char ww[1024];	*number = 0;	if(pLCLOC != NULL)	{		return -1;	}	snprintf(szSQL2, SQLMAX, 		"SELECT COUNT(*) FROM %s WHERE SEQID=%s",		pInSzTableName, pInSzSeqId);	snprintf(szSQL, SQLMAX, 		"SELECT "		"SEQID,"		"CHANGECONDITION,""DATAVLOLUMNGPRSUP,""DATAVOLUMNGPRSDOWN,""DATE_FORMAT(CHANGETIME,'%%Y%%m%%d%%H%%i%%s'),""QOSNUMTS,""QOSNMEANTHROUGHT,""QOSNPEAKTHROUGHT,""QOSNDELAY,""QOSNRECEDENCE,""QOSNRELIABILITY,""QOSRUMTS,""QOSMEANTHROUGHPUT,""QOSPEAKTHROUGHPUT,""QOSRDELAY,""QOSPRECEDENCE,""QOSRRELIABILITY"		",SORTID"		" FROM %s WHERE SEQID=%s",		pInSzTableName, pInSzSeqId);#ifdef _DEBUG//	logOra(sErrLog, "%s ",szSQL2);#endif	Lock();	nNumber = DbCount(szSQL2, myConnect);#ifdef _DEBUG//	logOra(sErrLog, "%s %d",szSQL2, nNumber);//	logOra(sErrLog, "%s %d",szSQL, nNumber);#endif	if(nNumber <= 0)	{		Unlock();		* number = 0;		return 0;	}	sz = (char*)malloc(SIZE_S_LLOTV*nNumber);	memset(sz, 0, SIZE_S_LLOTV*nNumber);#ifdef _DEBUG	logOra(sErrLog, "CURSOR...");#endif	int res = mysql_real_query(myConnect, szSQL, strlen(szSQL));	if(res != 0)	{		Unlock();		onError();		return -1;	}	MYSQL_RES *res_ptr = mysql_store_result(myConnect);	if (res_ptr == NULL) 	{		return -1;	}    MYSQL_ROW sqlrow;	for(j=0;j<nNumber;j++)	{		sqlrow = mysql_fetch_row(res_ptr);		p2 = (struct S_LLOTV*)&sz[SIZE_S_LLOTV*j];		if(sqlrow[0] != NULL) memcpy(p2->SeqId, sqlrow[0], LEN_SEQ);		if(sqlrow[1] != NULL) p2->ChangeCondition = atoi(sqlrow[1]);		if(sqlrow[2] != NULL) memcpy(p2->DataVolumeGPRSUp, sqlrow[2],16);		if(sqlrow[3] != NULL) memcpy(p2->DataVolumeGPRSDown, sqlrow[3],16);		if(sqlrow[4] != NULL) memcpy(p2->ChangeTime, sqlrow[4], LEN_DATETIME);		if(sqlrow[5] != NULL) memcpy(p2->QoSNUMTS, sqlrow[5], 24);		if(sqlrow[6] != NULL) memcpy(p2->QoSNMeanThroughput,sqlrow[6],2);		if(sqlrow[7] != NULL) memcpy(p2->QoSNPeakThrougput,sqlrow[7],2);		if(sqlrow[8] != NULL) p2->QoSNDelay=atoi(sqlrow[8]);		if(sqlrow[9] != NULL) p2->QoSNPrecedence=atoi(sqlrow[9]);		if(sqlrow[10] != NULL) p2->QoSNReliability=atoi(sqlrow[10]);		if(sqlrow[11] != NULL) memcpy(p2->QoSRUMTS, sqlrow[11], 24);		if(sqlrow[12] != NULL) memcpy(p2->QoSRMeanThroughput,sqlrow[12],2);		if(sqlrow[13] != NULL) memcpy(p2->QoSRPeakThrougput,sqlrow[13],2);		if(sqlrow[14] != NULL) p2->QoSRDelay=atoi(sqlrow[14]);		if(sqlrow[15] != NULL) p2->QoSRPrecedence=atoi(sqlrow[15]);		if(sqlrow[16] != NULL) p2->QoSRReliability = atoi(sqlrow[16]);		if(sqlrow[17] != NULL) memcpy(p2->SortId, sqlrow[17], LEN_SORT);		memcpy(p2->TableName, pInSzTableName, LEN_TABLENAME);		/*//#ifdef _DEBUG	logOra(sErrLog, "%d]%d %d %d "	"%s %s "	"%d %d %d %d %d "	"%s "	"%d %d %d %d %d ",	j,	ChangeCondition,	DataVolumeGPRSUp,	DataVolumeGPRSDown,		ChangeTime,	QoSNUMTS,	QoSNMeanThroughput,	QoSNPeakThrougput,	QoSNDelay,	QoSNPrecedence,	QoSNReliability,		QoSRUMTS,		QoSRMeanThroughput,	QoSRPeakThrougput,	QoSRDelay,	QoSRPrecedence,	QoSRReliability		);//#endif*/	}		* pOutLChangeLocation = (struct S_LLOTV*)sz;	* number = nNumber;		mysql_free_result(res_ptr);		Unlock();	return 0;}

⌨️ 快捷键说明

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