C++完成Query执行sql语句的接口封装和测试

1、在LXMysql.h 创建Query执行函数

cpp 复制代码
//封装 执行sql语句  if sqllen =0 strlen获取字符长度
	bool Query(const char*sql,unsigned long sqllen=0);

2、在LXMysql.cpp编写函数

cpp 复制代码
bool LXMysql::Query(const char* sql, unsigned long sqllen)
	{
		if (!mysql)//如果mysql没有初始化好
		{
			cerr << "Query failed: mysql is NULL" << endl;
			return false;
		}
        //如果sql语句是空的
		if (sql == NULL)
		{
			cerr << "sql is NULL" << endl;
			return false;
		}
        //如果sql语句长度为0
		if (sqllen <= 0)
		{
			sqllen = (unsigned long)strlen(sql);//强转
		}
        //如果还是<=0,就已经错啦
		if (sqllen <= 0)
		{
			cerr << "Query sql is empty or wrong format!" << endl;
		}
		int re = mysql_real_query(mysql, sql, sqllen);
		if (re != 0)
		{
			cerr << "mysql_real_query fqiled!" << mysql_error(mysql) << endl;
			return false;
		}
		return true;
	}

3、测试,创建一个表格,执行之后查看是否创建成功

cpp 复制代码
 string sql = "";
    sql = "CREATE TABLE IF NOT EXISTS `t_vedio`\
          (id INT AUTO_INCREMENT,\
          name varchar(1024),\
          data BLOB,\
          size INT,\
          PRIMARY KEY(id))";
    cout << my.Query(sql.c_str()) << endl;

4、执行,发现输出为1,说明创建成功

相关推荐
deng-c-f2 分钟前
C/C++内置库函数(5):值/引用传递、移动构造、以及常用的构造技巧
开发语言·c++
qq_310658513 分钟前
mediasoup源码走读(十)——producer
服务器·c++·音视频
檀越剑指大厂7 分钟前
【数据库系列】倒排索引(Inverted Index)
数据库·inverted-index
豆约翰7 分钟前
Z字形扫描ccf
java·开发语言·算法
Tipriest_9 分钟前
C++ Python使用常用库时如何做欧拉角 ⇄ 四元数转换
c++·python·四元数·欧拉角
闲人编程12 分钟前
权限系统设计与RBAC实现
java·网络·数据库·rbac·权限·codecapsule
小尧嵌入式12 分钟前
C语言中的面向对象思想
c语言·开发语言·数据结构·c++·单片机·qt
lionliu051913 分钟前
执行上下文 (Execution Context)
开发语言·前端·javascript
nbsaas-boot13 分钟前
JWT 与 Session 的实用场景分析:从架构边界到工程落地
java·开发语言·架构
Tim_1013 分钟前
【C++入门】03、C++整型
java·开发语言·jvm