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 + -
显示快捷键?