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

📄 dbonmysql.cpp

📁 本程序详细 演示了 vc如何连接数据库
💻 CPP
字号:
// DbOnMySql.cpp: implementation of the DbOnMySql class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "ConnMySql.h"
#include "DbOnMySql.h"

#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

DbOnMySql::DbOnMySql()
{
}

DbOnMySql::~DbOnMySql()
{
}

/* 建立与数据库的连接 */
BOOL DbOnMySql::ConnDB(const char *host, 
					   const char *user, 
					   const char *passwd,
					   const char* dbName)
{
	/* 初始化MYSQL结构 */
	mysql_init(&m_mysql);

	/* 连接数据库 */
	if(mysql_real_connect(&m_mysql, host, user, passwd, 
		dbName, 0, NULL, 0) != NULL)
	{//成功建立连接
		return TRUE;
	}
	else
	{//建立连接失败
		return FALSE;
	}
}

/* 关闭数据库连接 */
void DbOnMySql::Close()
{
	mysql_close(&m_mysql);
}

/* 查询记录 */
std::list<RecStruct> DbOnMySql::GetAllRec()
{
	/* 用于保存结果的List */
	std::list<RecStruct> recList;

	/* 查询语句 */
	std::string strsql = "select * from student";

	/* 执行查询 */
	if(mysql_real_query(&m_mysql, strsql.data(), strsql.length()) == 0)
	{
		/* 取得查询结果 */
		MYSQL_RES* pRes = NULL;
		pRes = mysql_store_result(&m_mysql);

		if(pRes != NULL)
		{
			/* 取得结果 */
			MYSQL_ROW  row;
			while(row = mysql_fetch_row(pRes))
			{				
				// 保存信息
				RecStruct rs;	
				if(row[0] != NULL)
				{
					strcpy(rs.stuId, row[0]);
				}
				if(row[1] != NULL)
				{	
					strcpy(rs.stuName, row[1]);
				}
				if(row[2] != NULL)
				{
					strcpy(rs.stuSex, row[2]);
				}
				if(row[3] != NULL)
				{
					strcpy(rs.birth, row[3]);
				}
				if(row[4] != NULL)
				{
					strcpy(rs.brief, row[4]);
				}

				// 加入List
				recList.push_back(rs);
			}
		}
	}

	return recList;	
}

⌨️ 快捷键说明

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