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

📄 pg_db.cpp

📁 实现pg接口功能
💻 CPP
字号:
#include "pg_head.h"#include "pg_db.h"extern PGSERVER_CONFIG	server_config_info;extern DB_Proc	DB_proc;char	*commval[COL_MAX_NUM_CPP];/**************************************************************** * PG接口存取数据库程序实现					 * Language:		C++					 * OS Platform:   	UNIX						 * Authors:							 * Date:						 * Copyight (C)  	 ****************************************************************/DB_Proc::DB_Proc(){}DB_Proc::~DB_Proc(){}int DB_Proc::db_connect(char *username,char *password,char *server){	//char	*tag="Monitor";	aConn = new DBconnection();	if (aConn->connect(server,username,password) != 0)	{		cout << endl << "connecting failed!" << endl;		return -1;	}	else	{		if (init_db_var() < 0)		{			return -2;		}		cout << "connecting succeed!" << endl;	}	return 0;}void DB_Proc::db_disconnect(){	if (aConn->disconnect() != 0)		cout << "disconnect failed!" << endl;	else		cout << "disconnect succeed!" << endl;			delete aConn;}int DB_Proc::init_db_var() {		int i;		cout <<"now execute func init_db_var ... ..." << endl;	for (i=0;i<COL_MAX_NUM_CPP;i++)	{ 	        commval[i] = (char *)malloc(COL_MAX_LEN_CPP);		if (commval[i] == NULL)        {        	cout << "malloc commval error!" << endl;			return -1;		};        	};	return 0;}int DB_Proc::get_account_info(char* username,ACCOUNT_INFO *p,int usertype,int hashvalue){	char	SQLStmt[100],passwd[17];	DBReadData *aDBRead = new DBReadData();	aDBRead->setConnection(aConn);	memset(SQLStmt,0,100);	printf("usertype = %d\thashvalue = %d\n",usertype,hashvalue);	if (usertype == 1)		sprintf(SQLStmt,"select username,password,status,passwordtype from b_dialup_user0%d where username = '%s'",hashvalue,username);	else if(usertype == 2)		sprintf(SQLStmt,"select username,password,status,passwordtype from b_broadband_user0%d where username = '%s'",hashvalue,username);	else if(usertype == 4)		sprintf(SQLStmt,"select username,password from b_calling_user where username = '%s'",username);	else	{		printf("Unknown usertype of user %s\n",username);		return -1;	}	printf("sql:%s结束\n",SQLStmt);	if (aDBRead->getData(SQLStmt) != 0)	{		cout << "query operation failed!" << endl;		return -1;	}	strcpy(p->username,"ssssssssssssssssssss");	if (aDBRead->GetProcStatus() == 0)    	while(aDBRead->readResult())	{		cout << "have result in database!" << endl;		if (usertype == 4)		{			*aDBRead >> p->username >> p->passwd;			p->status = 0;			p->passwdtype = 0;		}		else				*aDBRead >> p->username >> p->passwd >> p->status >> p->passwdtype;	//cout << "username:"<<p->username<<"	passwd:"<<p->passwd<<"结束	status:"<<p->status << endl;	}	else		cout << "There is no result in database!" << endl;		delete aDBRead;	return 1;}

⌨️ 快捷键说明

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