C++完成Connect连接数据的接口和测试

关于准备工作,请看上篇文章 https://blog.csdn.net/wjl990316fddwjl/article/details/135357755

1、在LXMysql.h里面创建Connect连接函数

cpp 复制代码
/数据库连接,先不考虑线程安全
 //unsigned short port 65535
//flag可以设置支持多条语句 默认为0;port=3306
bool Connect(const char*host,const char*user,const char* password,const char*database,unsigned short port=3306,unsigned short flag=0);

2、转到定义,写函数

cpp 复制代码
bool LXMysql::Connect(const char* host, const char* user, const char* password, const char* database, unsigned short port, unsigned short flag)
	{

		//if (!Init())//防止内存泄露
		//{
		//	cerr << "Connect failed,mysql is not init!" << endl;
		//	return false;
		//}
		if (!mysql && Init())//防止内存泄露 这样写是因为写了超时那个
		{
			cerr << "Connect failed,mysql is not init!" << endl;
			return false;
		}

		if (!mysql_real_connect(mysql, host, user, password, database, port, 0, NULL))
		{
			cerr << "mysql_real_connect failed!" << mysql_error(mysql) << endl;
			return false;
		}
		cout << "mysql connect success!" << endl;
		return true;
	}

3、测试是否成功

在test_LXMysql.cpp里面写

cpp 复制代码
//2、mysql连接,如果没有调用init,内部会自动调用
    if (my.Connect("127.0.0.1", "root", "990107Wjl@", "database_test"))
    {
        cout << "my.connect success!" << endl;
    }

4、执行即可

相关推荐
沫璃染墨11 分钟前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
Ruiery1 小时前
Linux 6.6内核 CPU 深度解析(一):BSP 拉起 — 从实模式到 kernel_init 的完整旅程
linux·运维·服务器
通信瓦工1 小时前
利用浊度和电导率测量确定乙二醇基流体的质量
网络·数据库·ai
ggaofeng2 小时前
Ctrl+C结束进程是如何实现的
服务器·c语言·网络
可乐ea2 小时前
GitHub Security Lab 开源 Fuzzing Taskflow:让 LLM 智能体自己跑完 C/C++ 模糊测试
jvm·c++·github·模糊测试·mcp·代码agent·智能体自动化
朝朝辞暮i2 小时前
C++ 第 13 课:值传递 —— 为什么函数里改了,外面却没变?
java·c++·算法
小马同学-2 小时前
mysql数据库原理
数据库·mysql
东方护航数据恢复(深圳)2 小时前
政务信创案例:达梦 DM8 数据库掉电页损坏,48 小时修复实录【东方护航数据恢复深圳店】
数据库·数据恢复·it运维·服务器数据恢复·二次开盘·硬盘开盘
qeen873 小时前
【Linux】Linux环境下的进程终止与进程等待问题
linux·运维·服务器
AC赳赳老秦3 小时前
OpenClaw 数据引用规范自动生成:为公开数据构建可信来源标注与标准引用体系
大数据·开发语言·汇编·数据库·人工智能·deepseek·openclaw