C++连接MYSQL数据库

C++连接MYSQL数据库,第1张

概述C++连接MYSQL数据库

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

//下面的代码是一个实现C++连接MysqL数据库的很好的例子//这里用了建表,插入,检索,删表等常用功能//我用VC++6.0生成,已经成功连接了。//在VC++6.0中要想把做一下两步准备工作才可以。//(1)Tools->Options->DirectorIEs->Include files中添加C:\Program files\MysqL\MysqL Server 6.0\include//(2)Tools->Options->DirectorIEs->library files中添加C:\Program files\MysqL\MysqL Server 6.0\lib\opt//其实就是将头文件和库文件包含进来//我觉得这个例子写的很好,再结合自己的试验,特地介绍给大家!#include <winsock.h>#include <iostream>#include <string>#include <MysqL.h>using namespace std;#pragma comment(lib,"ws2_32.lib")#pragma comment(lib,"libMysqL.lib")//单步执行,不想单步执行就注释掉#define STEPBYSTEPint main() {	cout << "****************************************" << endl;#ifdef STEPBYSTEP	system("pause");#endif	//必备的一个数据结构	MysqL mydata;	//初始化数据库	if (0 == MysqL_library_init(0,NulL,NulL)) {		cout << "MysqL_library_init() succeed" << endl;	} else {		cout << "MysqL_library_init() Failed" << endl;		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//初始化数据结构	if (NulL != MysqL_init(&mydata)) {		cout << "MysqL_init() succeed" << endl;	} else {		cout << "MysqL_init() Failed" << endl;		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//在连接数据库之前,设置额外的连接选项	//可以设置的选项很多,这里设置字符集,否则无法处理中文	if (0 == MysqL_options(&mydata,MysqL_SET_CHARSET_name,"gbk")) {		cout << "MysqL_options() succeed" << endl;	} else {		cout << "MysqL_options() Failed" << endl;		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//连接数据库	if (NulL			!= MysqL_real_connect(&mydata,"localhost","root","test",3306,0))			//这里的地址,用户名,密码,端口可以根据自己本地的情况更改			{		cout << "MysqL_real_connect() succeed" << endl;	} else {		cout << "MysqL_real_connect() Failed" << endl;		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//sql字符串	string sqlstr;	//创建一个表	sqlstr = "CREATE table IF NOT EXISTS user_info";	sqlstr += "(";	sqlstr +=			"user_ID INT UNSIGNED NOT NulL @R_404_6843@_INCREMENT PRIMARY KEY COMMENT 'Unique User ID',";	sqlstr +=			"user_name VARCHAR(100) CHaraCTER SET gb2312 ColLATE gb2312_chinese_ci NulL COMMENT 'name Of User',";	sqlstr +=			"user_second_sum INT UNSIGNED NOT NulL DEFAulT 0 COMMENT 'The Summation Of Using Time'";	sqlstr += ");";	if (0 == MysqL_query(&mydata,sqlstr.c_str())) {		cout << "MysqL_query() create table succeed" << endl;	} else {		cout << "MysqL_query() create table Failed" << endl;		MysqL_close(&mydata);		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//向表中插入数据	sqlstr =			"INSERT INTO user_info(user_name) VALUES('公司名称'),('一级部门'),('二级部门'),('开发小组'),('姓名');";	if (0 == MysqL_query(&mydata,sqlstr.c_str())) {		cout << "MysqL_query() insert data succeed" << endl;	} else {		cout << "MysqL_query() insert data Failed" << endl;		MysqL_close(&mydata);		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//显示刚才插入的数据	sqlstr = "SELECT user_ID,user_name,user_second_sum FROM user_info";	MysqL_RES *result = NulL;	if (0 == MysqL_query(&mydata,sqlstr.c_str())) {		cout << "MysqL_query() select data succeed" << endl;		//一次性取得数据集		result = MysqL_store_result(&mydata);		//取得并打印行数		int rowcount = MysqL_num_rows(result);		cout << "row count: " << rowcount << endl;		//取得并打印各字段的名称		unsigned int fIEldcount = MysqL_num_fIElds(result);		MysqL_FIELD *fIEld = NulL;		for (unsigned int i = 0; i < fIEldcount; i++) {			fIEld = MysqL_fetch_fIEld_direct(result,i);			cout << fIEld->name << "\t\t";		}		cout << endl;		//打印各行		MysqL_ROW row = NulL;		row = MysqL_fetch_row(result);		while (NulL != row) {			for (int i = 0; i < fIEldcount; i++) {				cout << row[i] << "\t\t";			}			cout << endl;			row = MysqL_fetch_row(result);		}	} else {		cout << "MysqL_query() select data Failed" << endl;		MysqL_close(&mydata);		return -1;	}#ifdef STEPBYSTEP	system("pause");#endif	//删除刚才建的表	sqlstr = "DROP table user_info";	if (0 == MysqL_query(&mydata,sqlstr.c_str())) {		cout << "MysqL_query() drop table succeed" << endl;	} else {		cout << "MysqL_query() drop table Failed" << endl;		MysqL_close(&mydata);		return -1;	}	MysqL_free_result(result);	MysqL_close(&mydata);	MysqL_server_end();	system("pause");	return 0;}

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的C++连接MYSQL数据库全部内容,希望文章能够帮你解决C++连接MYSQL数据库所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1232626.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存