转客宝APP赚钱挣钱app哪些是真的吗吗

vs2015平台 利用connector c++连接mysql数据库这几天在折腾c++连接mysql数据库,由于c++本身没有提供连接数据库的接口,只能利用c的一套来连接数据库,可是c连接数据库代码太繁琐而且不整洁,于是采用了mysql提供的针对c++连接数据库的api,即connector c++,现在我整理出来操作步骤供大家学习:下载:
1. 下载mysql(这个不多说,而且后面要利用里面lib文件夹下的libmysql.dll)
下载Mysql connector c++ 1.0.5,附上地址:/downloads/connector/cpp/配置:
1. 项目-&属性-&配置属性-&C/C++-&常规,在“附加包含目录”中将MySQL Connector C++ 1.0.5/include/的路径包含进来。
2. 项目-&属性-&配置属性-&链接器-&常规,在“附加库目录”中将MySQL/MySQL Connector C++ 1.0.5/lib/opt包含进来。
3. 项目-&属性-&配置属性-&链接器-&输入,在“附加依赖项”中添加mysqlcppconn.lib,mysqlcppconn-static.lib这两项(这两项就是”lib”文件夹下的两个lib文件)。
4. 将MySQL Connector C++ 1.0.5/lib/opt下的mysqlcppconn.dll文件复制到项目所在路径下的debug文件夹 (我的是:项目路径/x64/Debug)。测试代码:#include &iostream&#include &mysql_connection.h&#include &cppconn/driver.h&#include &cppconn/exception.h&#include &cppconn/resultset.h&#include &cppconn/statement.h&#include &cppconn/prepared_statement.h&#include &mysql_driver.h& using namespaceusing namespace std;class BookInfor {public:
string};class Mysql {public:
mysql::MySQL_Driver *
Connection *
Statement *
ResultSet *
PreparedStatement *prep_
Mysql()//构造函数
driver = sql::mysql::get_mysql_driver_instance();
// 建立链接
con = driver-&connect("tcp://127.0.0.1:3307", "root", "root");
state = con-&createStatement();
state-&execute("use book_infor");
void query()//查询
result = state-&executeQuery("select * from book");
// 输出查询
while (result-&next())
int id = result-&getInt("id");
//string img = result-&getString("bookname");
cout && id &&
int insert(BookInfor book)//插入
bool retstatus = state-&execute("INSERT INTO book (bookname,imgpath) VALUES ('Napier', 'New Zealand')");
if (!retstatus)
return state-&getUpdateCount();
int prepare_insert(BookInfor book)
prep_stmt = con-&prepareStatement("INSERT INTO book (name,img,price,writer) VALUES (?,?,?,?)");
prep_stmt-&setString(1, book.name);
prep_stmt-&setString(2, book.img);
prep_stmt-&setString(3, book.price);
prep_stmt-&setString(4, book.writer);
bool updatecount = prep_stmt-&executeUpdate();
if (!updatecount)
return state-&getUpdateCount();
~Mysql()//析构函数
}};/*int main(){
book.img = "dd";
book.writer = "dd";
book.name = "dd";
book.price = "dd";
m.prepare_insert(book);}*/
最新教程周点击榜
微信扫一扫就是,用C/C++的主函数去调用mysql数据库,应该如何实现呢?
这么多要学的,世界真大
你还没有登录,请先登录或注册慕课网帐号
13051人关注
5358人关注
14431人关注
Copyright (C)
All Rights Reserved | 京ICP备 号-2VS2015连接mySQL数据库 - 博客频道 - CSDN.NET
宏伟伟的博客
海阔凭鱼跃,天高任鸟飞
分类:mySQLC++VS2015
VS2015连接mySQL数据库
&&&&& 如题,今天给大家简单演示一下VS2015如何连接mySQL数据库。
&&&&& 首先呢,大家需要安装vs2015和mySQL这两个软件,我还安装了一个辅助软件SQLyog - 32 bit(我师兄推荐我安装的),还有我的mySQL版本是5.6 。废话少讲,开始了。
连接mySQL主要考虑两个方面问题,添加mysql.h这个头文件和libmysql.lib这个库文件。
1.新建win32控制台程序,添加源文件,将测试程序复制进去(我的实在网上随便下载一个测试程序,是原来用来测试VC6.0连接数据库的,不碍事,稍作修改都能用,如果你不想自己去网上找测试程序,那我就把测试程序粘上来吧,如下)
&span style=&font-size:12&&#include &winsock.h&
#include &iostream&
#include &string&
#include &mysql.h&
#pragma comment(lib, &ws2_32.lib&)
#pragma comment(lib, &libmysql.lib&)
//单步执行,不想单步执行就注释掉
#define STEPBYSTEP
int main() {
cout && &****************************************& &&
#ifdef STEPBYSTEP
system(&pause&);
//必备的一个数据结构
//初始化数据库
if (0 == mysql_library_init(0, NULL, NULL)) {
cout && &mysql_library_init() succeed& &&
cout && &mysql_library_init() failed& &&
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//初始化数据结构
if (NULL != mysql_init(&mydata)) {
cout && &mysql_init() succeed& &&
cout && &mysql_init() failed& &&
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//在连接数据库之前,设置额外的连接选项
//可以设置的选项很多,这里设置字符集,否则无法处理中文
if (0 == mysql_options(&mydata, MYSQL_SET_CHARSET_NAME, &gbk&)) {
cout && &mysql_options() succeed& &&
cout && &mysql_options() failed& &&
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//连接数据库
!= mysql_real_connect(&mydata, &localhost&, &root&, &123\\&, &test&,3306, NULL, 0))
//这里的地址,用户名,密码,端口可以根据自己本地的情况更改
cout && &mysql_real_connect() succeed& &&
cout && &mysql_real_connect() failed& &&
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//sql字符串
//创建一个表
sqlstr = &CREATE TABLE IF NOT EXISTS user_info&;
sqlstr += &(&;
&user_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'Unique User ID',&;
&user_name VARCHAR(100) CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NULL COMMENT 'Name Of User',&;
&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& &&
cout && &mysql_query() create table failed& &&
mysql_close(&mydata);
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//向表中插入数据
&INSERT INTO user_info(user_name) VALUES('公司名称'),('一级部门'),('二级部门'),('开发小组'),('姓名');&;
if (0 == mysql_query(&mydata, sqlstr.c_str())) {
cout && &mysql_query() insert data succeed& &&
cout && &mysql_query() insert data failed& &&
mysql_close(&mydata);
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//显示刚才插入的数据
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& &&
//一次性取得数据集
result = mysql_store_result(&mydata);
//取得并打印行数
int rowcount = mysql_num_rows(result);
cout && &row count: & && rowcount &&
//取得并打印各字段的名称
unsigned int fieldcount = mysql_num_fields(result);
MYSQL_FIELD *field = NULL;
for (unsigned int i = 0; i & i++) {
field = mysql_fetch_field_direct(result, i);
cout && field-&name && &\t\t&;
//打印各行
MYSQL_ROW row = NULL;
row = mysql_fetch_row(result);
while (NULL != row) {
for (int i = 0; i & i++) {
cout && row[i] && &\t\t&;
row = mysql_fetch_row(result);
cout && &mysql_query() select data failed& &&
mysql_close(&mydata);
return -1;
#ifdef STEPBYSTEP
system(&pause&);
//删除刚才建的表
sqlstr = &DROP TABLE user_info&;
if (0 == mysql_query(&mydata, sqlstr.c_str())) {
cout && &mysql_query() drop table succeed& &&
cout && &mysql_query() drop table failed& &&
mysql_close(&mydata);
return -1;
mysql_free_result(result);
mysql_close(&mydata);
mysql_server_end();
system(&pause&);
2.添加头文件和库文件
1' 解决方案资源管理器--&右击工程名--&属性
2' 配置属性--&C/C++--&常规--&附加包含目录--&左击空白处--&向下箭头--&编辑
双击空白处--&...--&选择目录--&选择文件夹
这个目录是拥有mysql.h的目录,根据自己的安装路径不同,位置不同,一般在mysql的安装目录下
到了这一步,头文件算是添加好了
下面添加库文件,方法类似
还是这个界面,C/C++下面一个选项
链接器--&常规--&附加库目录--&左击空白处--&向下箭头--&编辑--&双击空白处--&...--&选择目录--&选择文件夹--&确定。
库文件主要是libmysql.lib文件所在文件夹
添加库文件还需输入
链接器--&输入--&附加依赖项--&左击右边--&向下箭头--&编辑--&输入libmusql.lib--&确定。
库文件添加成功!
简单修改测试程序
数据库的地址,用户名,密码,端口可以根据自己本地的情况更改
如果对几个变量意思不理解可以右击函数mysql_real_connect查看定义
提示:有朋友可能看到我的密码是123\\感到是奇怪,看过我以前文章的同学知道我的密码是123\,但是大家都知道 \ 加上 不同的字母表示不同的意思,也就是转义字符,C语言中 \\ 才表示 \
修改完成后编译,成功
但是有的同学会遇到libmysql.dll文件丢失的问题
将lib目录下的libmysql.dll拷贝到工程目录下的debug文件下
到此结束了。
如有问题,欢迎交流,不正确的地方,欢迎指教
Grand910616
排名:千里之外
(8)(2)(1)(2)(7)(4)(1)(3)(0)(0)(0)(1)(0)(1)(1)(2)(1)(1)(1)(1)(1)(1)

我要回帖

更多关于 挣钱app哪些是真的吗 的文章

 

随机推荐