void SQLClass::QuestUpdate(int aIndex,int iKillMob,int iMobCount,char *szQuestName,char *szQuestInfo) { GOBJSTRUCT *gObj = (GOBJSTRUCT*)OBJECT_POINTER(aIndex); char szQueryBuff[1024]; char szQueryBuff2[1024]; char szQueryBuff3[1024]; char szQueryBuff4[1024]; char szQueryBuff5[1024]; unsigned int MailMemoCount; unsigned int MailMemoTotal; unsigned int MemoGUID; wsprintfA(szQueryBuff, "SELECT MAX(MemoCount) AS MemoCount FROM T_FriendMain"); PointsSql.Execute(szQueryBuff, &rsSql, true); rsSql.Fetch(); MailMemoCount = rsSql.Values("MemoCount").ToIntegerU(); rsSql.Close(); MailMemoCount += 1; //Messages.outNormal(aIndex,"MailCount %d",MailMemoCount); wsprintfA(szQueryBuff2, "SELECT MemoTotal FROM T_FriendMain WHERE Name = '%s';", gObj->Name); PointsSql.Execute(szQueryBuff2, &rsSql, true); rsSql.Fetch(); MailMemoTotal = rsSql.Values("MemoTotal").ToIntegerU(); rsSql.Close(); MailMemoTotal += 1; //Messages.outNormal(aIndex,"MemoTotal %d",MailMemoTotal); wsprintfA(szQueryBuff3, "SELECT GUID FROM T_FriendMain WHERE Name = '%s';", gObj->Name); PointsSql.Execute(szQueryBuff3, &rsSql, true); rsSql.Fetch(); MemoGUID = rsSql.Values("GUID").ToIntegerU(); rsSql.Close(); //Messages.outNormal(aIndex,"GUID %d",MemoGUID); //Send Mail with Quest Info char QuestInfo[300]; wsprintfA(QuestInfo,"Quest completed, go to Quest Manager for reward!"); wsprintfA(szQueryBuff4, "INSERT INTO %s.dbo.T_FriendMail (MemoIndex,GUID,FriendName,wDate,Subject,bRead,Memo,Photo,Dir,Act) VALUES (%d,%d,'Manager',GetDate(),'%s',0,convert(varbinary(1000),'%s'),0x3006FF22222F1FFFC703FC0040F111110000,143,2)",m_SqlConn.sDatabase,MailMemoCount,MemoGUID,szQuestName,QuestInfo); PointsSql.Execute(szQueryBuff4, &rsSql, true); rsSql.Close(); //Update Mail Count wsprintfA(szQueryBuff5, "UPDATE %s.dbo.T_FriendMain SET MemoCount='%d',MemoTotal='%d' WHERE Name='%s'",m_SqlConn.sDatabase,MailMemoCount,MailMemoTotal,gObj->Name); PointsSql.Execute(szQueryBuff5, &rsSql, true); rsSql.Close(); //Update Mail FriendMemoListReq(aIndex); }
void SQLClass::SendMail(int aIndex,char *szQuestName,char *szQuestInfo) { GOBJSTRUCT *gObj = (GOBJSTRUCT*)OBJECT_POINTER(aIndex); char szQueryBuff[1024]; char szQueryBuff2[1024]; char szQueryBuff3[1024]; unsigned int MailMemoCount; unsigned int MailMemoTotal; unsigned int MemoGUID; wsprintfA(szQueryBuff, "SELECT MAX(MemoCount) AS MemoCount FROM T_FriendMain;"); PointsSql.Execute(szQueryBuff, &rsSql, true); rsSql.Fetch(); MailMemoCount = rsSql.Values("MemoCount").ToIntegerU(); rsSql.Close(); MailMemoCount += 1; wsprintfA(szQueryBuff2, "SELECT MemoTotal FROM T_FriendMain WHERE Name = '%s';", gObj->Name); PointsSql.Execute(szQueryBuff2, &rsSql, true); rsSql.Fetch(); MailMemoTotal = rsSql.Values("MemoTotal").ToIntegerU(); rsSql.Close(); MailMemoTotal += 1; wsprintfA(szQueryBuff3, "SELECT GUID FROM T_FriendMain WHERE Name = '%s';", gObj->Name); PointsSql.Execute(szQueryBuff3, &rsSql, true); rsSql.Fetch(); MemoGUID = rsSql.Values("GUID").ToIntegerU(); rsSql.Close(); char sSQL[2048] = {0}; wsprintf(sSQL,"INSERT INTO %s.dbo.T_FriendMail (MemoIndex,GUID,FriendName,wDate,Subject,bRead,Memo,Photo,Dir,Act) VALUES (%d,%d,'Manager',GetDate(),'%s',0,convert(varbinary(1000),'%s'),0x3006FF22222F1FFFC703FC0040F111110000,143,2)",m_SqlConn.sDatabase,MailMemoCount,MemoGUID,szQuestName,szQuestInfo); PointsSql.Execute(sSQL, &rsSql, true); rsSql.Close(); char sSQL2[1024] = {0}; wsprintf(sSQL2,"UPDATE %s.dbo.T_FriendMain SET MemoCount='%d',MemoTotal='%d' WHERE Name='%s'", m_SqlConn.sDatabase,MailMemoCount,MailMemoTotal,gObj->Name); PointsSql.Execute(sSQL2, &rsSql, true); rsSql.Close(); //Update Mail FriendMemoListReq(aIndex); Messages.outOlive(aIndex,"You have new Mail from system"); }
short SQLClass::ReturnShort(char *szField,char *szQuery) { PointsSql.Execute(szQuery, &rsSql, true); rsSql.Fetch(); short value = rsSql.Values(szField).ToIntegerS(); rsSql.Close(); return value; }
char* SQLClass::ReturnString(char *szField,char *szQuery) { static char szRetString[1024]; PointsSql.Execute(szQuery, &rsSql, true); rsSql.Fetch(); strcpy_s(szRetString,rsSql.Values(szField).ToString()); rsSql.Close(); return szRetString; }
int SQL_DelChar(char* PlayerName) { char sSQL[1024] = {0}; wsprintf(sSQL,"SELECT %s FROM [%s].[dbo].[Character] where %s='%s'", sql_zscountcol,sql_databasemu,sql_zscountcolname,PlayerName); if(!MsSQL.Execute(sSQL, &MyRS)) { DebugInfo("Failed to execute the SQL statement",99); //MsgBox("Failed to execute the SQL statement.\n"); MessageBox(NULL,"Failed to execute the SQL statement","OGC-Servers",MB_OK); ::ExitProcess(0); return false; } char sBuf[1024] = {0}; int iBufSz = 0; while(MyRS.Fetch()) { MyRS.sColumnEx(1,sBuf, sizeof(sBuf), &iBufSz); } int DelChar = atoi(sBuf); MyRS.Close(); return DelChar; }
void SQLClass::DoQuery(char *szQuery) { //PointsSql.Execute(szQuery); PointsSql.Execute(szQuery, &rsSql, true); rsSql.Close(); }