📄 db_mysql.h.bak
字号:
/********************************************************************** FileName : DB_MySQL.h Description : 数据库操作接口头文件 Version : 1.0 Date : 2003年10月07日 Author : 刘荣辉 Other : ***********************************************************************///#if !defined(AFX_DB_MySQL_H__17EC670B_01D6_42DE_998A_3597ED5BC717__INCLUDED_)//#define AFX_DB_MySQL_H__17EC670B_01D6_42DE_998A_3597ED5BC717__INCLUDED_//#if _MSC_VER > 1000//#pragma once//#endif // _MSC_VER > 1000#ifndef __DB_MySQL_H__#define __DB_MySQL_H__#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include <iostream.h>#include <memory.h>#include <string.h>#include <time.h>#include <sys/socket.h>#include <netinet/in.h>#include <assert.h>#include <mysql.h>//#include "cmpp_proto.h"//#include "smgp_proto.h"#include "sys_struct.h"#include "FileOpr.h"#define MAXSMTBUF 40#define MAXPAGE 99#define MAXBUF 1024#define MAXARRSIZE 1024class DB_MySQL{public: DB_MySQL(); virtual ~DB_MySQL(); int SafeQuery(char * CommandStr); //操作失败时自动重连数据库 int GetRecordNum(char *); //统计符合某查询条件的记录的条数 int GetDnNodeInfo(CP_Info *,int ); //从数据库获取下节点信息 int GetMtRoute(MtRouteInfo *, char * ); //从数据库获取MT路由信息 int WrMO_Interface(CMPP_Deliver *, char *); //写本地业务接口数据表 int WrCMPP_MOLog(Cmpp_MO_Log *, char *); //写CMPP_Deliver上行转发记录表 int WrMO_Queue(Cmpp_MO_Log *, char *); //写上行转发记录缓存表 int WrCMPP_MTLog(Cmpp_MT_Log *, char *); //写CMPP_Submit下行转发记录表 int WrMT_Queue(void *, int, char *); //写下行转发记录缓存表 int ReadMO_Queue(char *, Cmpp_MO_Log *, int *); //从上行转发缓存表提取记录 int ReadMT_Queue(char *, Cmpp_MT_Log *, int *); //从下行转发缓存表提取记录 int GetMsgId_Echo(char *, int *,long long *); //从CMPP_Submit下行转发日志表中提取MsgId_Echo /////////////////////////////////////////////////////////////// int DBcheck(char * CommandStr, int * RecordNum); //功能:统计符合查询条件的记录数 //输入参数:查询语句字符串 //输出参数:查询结果记录数 //返回值:0 成功 // >0 错误码 int DBquery(char * CommandStr, void * RecordStruct, int DataType, int * RecordNum); //功能:获得符合查询语句的记录结构体数组 //输入参数:查询语句字符串 //输出参数:查询结果结构体数组指针 //输出参数:查询结果记录数 //返回值:0 成功 // >0 错误码 //说明:将记录集转化为结构体数组,若为select的是单个字段,则返回一维数组 int DBModify(char * CommandStr); //功能:执行数据库增删改语句 //输入参数:SQL语句字符串(二进制字段等必须先用mysql_real_escape_string进行转义) //返回值:影响数据库的行数 ///////////////////////////////////////////////////////////////// int DBInit(char *); //从配置文件获取数据库操作参数 int DBConn(); //建立数据库连接 int DBClose(); //关闭数据库 int GetConn(MYSQL *); //传入已初始化的数据库连接 char * getTime(char *szbuf); //获取当前时间 char * getDBTime(char* szbuf); //获取当前时间(数据库时间格式) int WriteSMGP_MO(SMGP_Deliver* pDeliver); int WriteSMGP_Submit(SMGP_Submit *pSubmit); int DivideMsg(char *szBuf); MYSQL conn; //数据库连接 char m_sPageMsg[MAXPAGE][MAXBUF]; unsigned int m_nMaxLength;private: char DBConfig[50]; //数据库参数配置文件名 char DBHost[32]; //数据库的主机地址、用户名、密码、数据库名 char DBUser[32]; char DBPass[32]; char DBName[32]; char errmsg[1024]; char szSql[1500]; MYSQL_RES *res; //数据库查询结果集 MYSQL_ROW row; FileOpr *fp; //读配置文件时使用的文件操作类};#endif // !defined(AFX_DB_MySQL_H__17EC670B_01D6_42DE_998A_3597ED5BC717__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -