首先,根据你当前的操作系统,还有开发工具,选择相应的mysql版本。本人选择的环境是win10 + vs2013

需要解决三个问题:1、下载安装mysql服务器,并登录mysql测试一下是否安装成功;2、搭建mysql开发环境;3、写一个简单的demo连接操作数据库,看看是否能够成功。

下面依次完成上述三个问题:

1、下载安装mysql:

  注:安装环境是一件耐心和折磨的事,所以静下心来慢慢弄吧。

  打开https://downloads.mysql.com/archives/这个地址,找到 mysql installer 下载,或者这个地址下载:https://dev.mysql.com/archives/get/file/mysql-installer-community-5.7.21.0.msi。

  安装mysql,并测试是否安装成功,请另行百度。啊哈哈哈嗝

  懒人参考:https://www.cnblogs.com/dtting/p/7691202.html

  安装完后,可以看一下任务管理器里mysqld.exe这个进程在不在。

  有可能你在cmd界面执行mysql命令登录会提示你没有这个命令,这时不用慌,可以cd到mysql安装目录再执行目录下的mysql.exe -u root -p 登录。可以执行这个sql看下当前的数据库,show databases;

  use world;

可能还会遇到很多问题,百度一下吧。

2、搭建mysql开发环境:

  恭喜你,完成了第一步,你已经很了不起了。

  在你安装的目录里有你需要的开发环境,看考:https://www.cnblogs.com/magicsoar/p/3817518.html。

  打开工程属性,c/c++常规在添加头文件目录(Additional Include Directories)里添加mysql的头文件路径。我的是C:\Program Files\MySQL\MySQL Server 5.7\include;

  链接器(Linker)常规里,找到添加库目录(Additional Library Directories)里添加mysql的库目录。这样代码里就可以这样写了#pragma comment(lib,"libmysql.lib")

  还需要把libmysql.dll拷贝到你的可执行文件所在目录才行哦。

3、一个简单的demo连接操作数据库:

 #include <Windows.h>
#include <mysql.h>
#include <string>
#include <iostream> using namespace std;
#pragma comment(lib,"libmysql.lib")
int main()
{ const char user[] = "root";
const char pswd[] = "root";
const char host[] = "localhost";
const char database[] = "world";
unsigned int port = ;
MYSQL myCont;
MYSQL_RES *result;
MYSQL_ROW sql_row;
int res;
mysql_init(&myCont);
if (mysql_real_connect(&myCont, host, user, pswd, database, port, NULL, ))
{
mysql_query(&myCont, "SET NAMES GBK"); //设置编码格式
res = mysql_query(&myCont, "select * from city ORDER BY ID desc limit 10");//正序ASC,倒序desc查询,字符串里千万不要有分号
if (!res)
{
result = mysql_store_result(&myCont);
if (result)
{
int iLength = mysql_num_fields(result);
while (sql_row = mysql_fetch_row(result))//获取具体的数据
{
for (int num = ; num < iLength; ++num)
{
cout << sql_row[num] << "\t";
}
cout << endl;
}
}
}
else
{
cout << "query sql failed!" << endl;
}
}
else
{
cout << "connect failed!" << endl;
}
if (result != NULL)
mysql_free_result(result);
mysql_close(&myCont);
system("pause");
return ; }

代码来源网络。

执行结果:

4、小提示:

  a、如果你是32位的mysql库文件,就编译32位的程序;64位mysql库文件就编译64位的程序哦;

  b、我也是渣渣,但我有一颗死磕且能静下来的心,借用网上资料也能成事,难得;

  c、注意修改配置时,debug和release的区别。

c++操作mysql入门详解的更多相关文章

  1. MySQL入门详解(二)---mysql事务、锁、以及优化

    MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在一个商城系统中,用户执行购买操作,那么用户订单中应该加一条,库存要减一条,如果这两步由于意外只进行了其中一步那么就会发生很大的问题.而事 ...

  2. Jmeter操作MySQL数据库详解

    一.jmeter操作数据库的原理 jmeter不可直接操作数据库,必须通过驱动程序来间接操作,但如果数据库不是在本地而是云服务器上的话就需要通过网络来操作. jmeter通过驱动程序来完成对MySQL ...

  3. CMD命令操作MySql数据库详解

    第一:mysql服务的启动和停止 1.  net stop mysql 2.  net start mysql 第二:登录 mysql –u用户名 [–h主机名或者IP地址] –p密码 例如:mysq ...

  4. 原生jdbc操作mysql数据库详解

    首先给大家说一下使用JDBC链接数据库的步骤 1.加载链接数据库驱动 2.建立数据库链接 3.创建数据库操作对象 4.编写sql语句,执行sql语句 5.获取结果集 6.释放资源 我这边采用的是mav ...

  5. MySQL入门详解(三)---mysql如何进行主从配置

    基本要求 两台服务器(windows,linux,mac) 双方mysql版本需一致,如不一致,只要主节点低于从节点 两台服务器防火墙关闭 双方数据库所用的用户,要具有远程访问的权限 主服务器配置 修 ...

  6. MySQL入门详解(一)---mysql的语言

    MySQL语言分为:DCL(数据库控制语言).DDL(数据库定义语言).DQL(数据库查询语言).DML(数据库操作语言),这一节我们先从mysql的语言开始. DCL:数据库控制语言,用来设置数据库 ...

  7. Mysql入门详解

    目录 数据库之Mysql 一 .简单了解数据库 二.Mysql的使用 三.多表查询 数据库之Mysql 本篇文章为观看某教学视频后所作个人总结 一 .简单了解数据库 1.1常见关系型数据库 mysql ...

  8. Linq之旅:Linq入门详解(Linq to Objects)

    示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集 ...

  9. SQL注入攻防入门详解

    =============安全性篇目录============== 本文转载 毕业开始从事winfrm到今年转到 web ,在码农届已经足足混了快接近3年了,但是对安全方面的知识依旧薄弱,事实上是没机 ...

随机推荐

  1. 一个基于NodeJS开发的APP管理CMS系统

    花了大概3周独立开发了一个基于NodeJS的CMS系统,用于公司APP的内容管理( **公司APP?广告放在最后 ^_^ ** ,管理员请理解~~~ )晚上看了部电影还不想睡,闲着也是闲着就作下小小总 ...

  2. Daily Scrum (2015/10/25)

    今天终于到了周末的尾声,我们的组员也应该正常得投入到工作中了.这天晚上我(符美潇)和PM(潘礼鹏)和两个DEV开了一个小会,讨论一下我们本周的代码编写工作.我们了解到大家的代码阅读工作和相关知识的学习 ...

  3. linux 常用命令-ps命令

    ps(process status):进程状态相关命令 1.

  4. DataTime日期格式化

    C# DateTime日期格式化 在C#中DateTime是一个包含日期.时间的类型,此类型通过ToString()转换为字符串时,可根据传入给Tostring()的参数转换为多种字符串格式. 目录 ...

  5. BETA5/7

    前言 我们居然又冲刺了·五 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 前一份代码方案全部垮掉,我,重构啦 接下来的计划 加速加速,一定要完成速度模块 ...

  6. 第二次作业<2>

    自学计划 应为对网络的教程并不了解,所以-- 我扒了一遍同学的博客,找到了两个课程. 慕课网 和 这个. 选择这两个教程主要是深入浅出,比较合理. 开始先两个课程相互应证,多了解以后可能会选择一个.虽 ...

  7. JS实现前端将数据导出excel

    点击此跳到原文,原文有效果动图. 方法一 将table标签,包括tr.td等对json数据进行拼接,将table输出到表格上实现,这种方法的弊端在于输出的是伪excel,虽说生成xls为后缀的文件,但 ...

  8. 【大数据应用技术】作业八|爬虫综合大作业Molly134

    本次作业的要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3075 前言:本次作业是爬取CBO中国票房2010-2019年每年 ...

  9. sql中exists和not exists的用法

    该文转载自:http://www.cnblogs.com/mytechblog/articles/2105785.html sql中exists,not exists的用法 exists : 强调的是 ...

  10. ubuntu中启动VIM,以及学习VIM

    启动VIM:首先打开终端,然后输入vi回车,然后输入i或者a,进入. 学习VIM:首先打开终端,然后输入vimtutor回车,然后进入教程学习.