广告
返回顶部
首页 > 资讯 > 数据库 >C++连接并使用MySQL数据库
  • 757
分享到

C++连接并使用MySQL数据库

C++MySQL 2022-05-24 23:05:51 757人浏览 泡泡鱼
摘要

本文实例为大家分享了c++连接并使用Mysql数据库的具体代码,供大家参考,具体内容如下 1. C++连接MySQL数据库 首先在VS里新建C++工程项目,右键工程项目名,选择属性。 选择平台选择 选择配置管理器

本文实例为大家分享了c++连接并使用Mysql数据库的具体代码,供大家参考,具体内容如下

1. C++连接MySQL数据库

首先在VS里新建C++工程项目,右键工程项目名,选择属性。

选择平台选择

选择配置管理器

选择新建

下拉菜单中选择X64 .确定

选择C/C++ -> 常规 -> 附加包含目录 ,添加C:\Program Files\mysql\MySQL Server 5.5\include(根据自己的安装目录选择)

选择连接器 -> 常规 -> 附加库目录 。 添加C:\Program Files\Mysql\MySQL Server 5.5\lib;(根据自己的安装目录选择)

选择连接器 -> 输入 -> 附加依赖项 。 添加C:\Program Files\MySQL\MySQL Server 5.5\lib\libmysql.lib;(根据自己的安装目录选择)

最后将动态链接库libmysql.dll复制到工程的X64生成目录下。该动态连接库文件在C:\Program Files\MySQL\MySQL Server 5.5\lib\目录下

2. MySQL常用API函数

mysql_affected_rows() 返回被最新的UPDATE, DELETE或INSERT查询影响的行数。
mysql_close() 关闭一个服务器连接。
mysql_connect() 连接一个MySQL服务器。该函数不推荐;使用mysql_real_connect()代替。
mysql_change_user() 改变在一个打开的连接上的用户和数据库
mysql_create_db() 创建一个数据库。该函数不推荐;而使用SQL命令CREATE DATABASE。
mysql_data_seek() 在一个查询结果集合中搜寻一任意行。
mysql_debug() 用给定字符串做一个DBUG_PUSH。
mysql_drop_db() 抛弃一个数据库。该函数不推荐;而使用SQL命令DROP DATABASE。
mysql_dump_debug_info() 让服务器将调试信息写入日志文件。
mysql_eof() 确定是否已经读到一个结果集合的最后一行。这功能被反对; mysql_errno()或mysql_error()可以相反被使用。
mysql_errno() 返回最近被调用的MySQL函数的出错编号。
mysql_error() 返回最近被调用的MySQL函数的出错消息。
mysql_escape_string() 用在SQL语句中的字符串的转义特殊字符。
mysql_fetch_field() 返回下一个表字段的类型。
mysql_fetch_field_direct () 返回一个表字段的类型,给出一个字段编号。
mysql_fetch_fields() 返回一个所有字段结构的数组
mysql_fetch_lengths() 返回当前行中所有列的长度。
mysql_fetch_row() 从结果集合中取得下一行。
mysql_field_seek() 把列光标放在一个指定的列上。
mysql_field_count() 返回最近查询的结果列的数量。
mysql_field_tell() 返回用于最后一个mysql_fetch_field()的字段光标的位置。
mysql_free_result() 释放一个结果集合使用的内存。
mysql_get_client_info() 返回客户版本信息。
mysql_get_host_info() 返回一个描述连接的字符串。
mysql_get_proto_info() 返回连接使用的协议版本。
mysql_get_server_info() 返回服务器版本号。
mysql_info() 返回关于最近执行得查询的信息。
mysql_init() 获得或初始化一个MYSQL结构。
mysql_insert_id() 返回有前一个查询为一个AUTO_INCREMENT列生成的ID。
mysql_kill() 杀死一个给定的线程
mysql_list_dbs() 返回匹配一个简单的正则表达式的数据库名。
mysql_list_fields() 返回匹配一个简单的正则表达式的列名。
mysql_list_processes() 返回当前服务器线程的一张表。
mysql_list_tables() 返回匹配一个简单的正则表达式的表名。
mysql_num_fields() 返回一个结果集合重的列的数量。
mysql_num_rows() 返回一个结果集合中的行的数量。
mysql_options() 设置对mysql_connect()的连接选项。
mysql_ping() 检查对服务器的连接是否正在工作,必要时重新连接。
mysql_query() 执行指定为一个空结尾的字符串的SQL查询。
mysql_real_connect() 连接一个MySQL服务器。
mysql_real_query() 执行指定为带计数的字符串的SQL查询。
mysql_reload() 告诉服务器重装授权表。
mysql_row_seek() 搜索在结果集合中的行,使用从mysql_row_tell()返回的值。
mysql_row_tell() 返回行光标位置。
mysql_select_db() 连接一个数据库。
mysql_shutdown() 关掉数据库服务器。
mysql_stat() 返回作为字符串的服务器状态。
mysql_store_result() 检索一个完整的结果集合给客户。
mysql_thread_id() 返回当前线程的ID。
mysql_use_result() 初始化一个一行一行地结果集合的检索。

3. C++使用MySQL数据库

示例程序,自己消化,包含的api不懂就Google


#define _CRT_SECURE_NO_WARNINGS
#include<iOStream>
#include<windows.h>
#include<WinSock.h>
#include<mysql.h>


using namespace std;
#pragma comment(lib,"libmysql.lib")
#pragma comment(lib,"wsock32.lib")
MYSQL *mysql = new MYSQL; //mysql连接 
MYSQL_FIELD *fd; //字段列数组 
char field[32][32]; //存字段名二维数组 
MYSQL_RES *res; //这个结构代表返回行的一个查询结果集 
MYSQL_ROW column; //一个行数据的类型安全(type-safe)的表示,表示数据行的列 
char query[150]; //查询语句 

bool ConnectDatabase();
bool QueryDatabase1();
//bool QueryDatabase2();
int main()
{
 ConnectDatabase();
 QueryDatabase1();
 //QueryDatabase2();
 system("pause");
 return 0;
}


bool ConnectDatabase()
{
 //初始化mysql 
 mysql_init(mysql);
 //返回false则连接失败,返回true则连接成功 
 if (!(mysql_real_connect(mysql, "localhost", "root", "123456", "company", 0, NULL, 0))) //中间分别是主机,用户名,密码,数据库名,端口号(可以写默认0或者3306等),可以先写成参数再传进去 
 {
  printf("Error connecting to database:%s\n", mysql_error(mysql));
  return false;
 }
 else
 {
  printf("Connected...\n");
  return true;
 }
 return true;
}

bool QueryDatabase1()
{
 sprintf_s(query, "select * from t_dept"); //执行查询语句,这里是查询所有,user是表名,不用加引号,用strcpy也可以 
 mysql_query(mysql, "set names gbk"); //设置编码格式(SET NAMES GBK也行),否则cmd下中文乱码 
 //返回0 查询成功,返回1查询失败 
 if (mysql_query(mysql, query)) //执行SQL语句
 {
  printf("Query failed (%s)\n", mysql_error(mysql));
  return false;
 }
 else
 {
  printf("query success\n");
 }
 //获取结果集 
 if (!(res = mysql_store_result(mysql))) //获得sql语句结束后返回的结果集 
 {
  printf("Couldn't get result from %s\n", mysql_error(mysql));
  return false;
 }

 //打印数据行数 
 printf("number of dataline returned: %d\n", mysql_affected_rows(mysql));

 //获取字段的信息 
 char *str_field[32]; //定义一个字符串数组存储字段信息 
 for (int i = 0; i<4; i++) //在已知字段数量的情况下获取字段名 
 {
  str_field[i] = mysql_fetch_field(res)->name;
 }
 for (int i = 0; i<4; i++) //打印字段 
  printf("%10s\t", str_field[i]);
 printf("\n");
 //打印获取的数据 
 while (column = mysql_fetch_row(res)) //在已知字段数量情况下,获取并打印下一行 
 {
  printf("%10s\t%10s\t%10s\t%10s\n", column[0], column[1], column[2], column[3]); //column是列数组 
 }
 return true;
}

//bool QueryDatabase2()
//{
// mysql_query(mysql, "set names gbk");
// //返回0 查询成功,返回1查询失败 
// if (mysql_query(mysql, "select * from user")) //执行SQL语句 
// {
//  printf("Query failed (%s)\n", mysql_error(mysql));
//  return false;
// }
// else
// {
//  printf("query success\n");
// }
// res = mysql_store_result(mysql);
// //打印数据行数 
// printf("number of dataline returned: %d\n", mysql_affected_rows(mysql));
// for (int i = 0; fd = mysql_fetch_field(res); i++) //获取字段名 
//  strcpy(field[i], fd->name);
// int j = mysql_num_fields(res);//获取列数 
// for (int i = 0; i<j; i++)//打印字段 
//  printf("%10s\t", field[i]);
// printf("\n");
// while (column = mysql_fetch_row(res))
// {
//  for (int i = 0; i<j; i++)
//   printf("%10s\t", column[i]);
//  printf("\n");
// }
// return true;
//
//}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。

您可能感兴趣的文档:

--结束END--

本文标题: C++连接并使用MySQL数据库

本文链接: https://www.lsjlt.com/news/9676.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C++连接并使用MySQL数据库
    本文实例为大家分享了C++连接并使用MySQL数据库的具体代码,供大家参考,具体内容如下 1. C++连接MySQL数据库 首先在VS里新建C++工程项目,右键工程项目名,选择属性。 选择平台选择 选择配置管理器...
    99+
    2022-05-24
    C++ MySQL
  • C++怎么连接并使用MySQL数据库
    这篇文章主要为大家展示了“C++怎么连接并使用MySQL数据库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C++怎么连接并使用MySQL数据库”这篇文章吧。1...
    99+
    2022-10-18
  • C#连接MySQL数据库
    目录 一、引用MySql.Data.dll文件 二、连接、关闭数据库 三、数据库增删改查 附:完整代码 一、引用MySql.Data.dll文件 创建C#窗体应用程序,解决方案资源管理器中找到“引用”,右键,选择添加引用。 在MyS...
    99+
    2023-10-28
    c# 数据库 mysql
  • C# 连接 MySQL 数据库
    目录 一、需求 二、新建 C# 项目 三、MySQL数据库 四、MySqlHelper 五、测试 一、需求 C# 使用 MySQL 数据库的情况还是比较少的,大部分使用 Windows 平台一般使用 SQL Server,在两年前我...
    99+
    2023-09-02
    c# 数据库
  • c++ 连接mysql数据库
            使用vs2019对window11中的数据库进行连接 1. 配置连接环境         首先需要把mysql中的头文件和库文件放入到c++项目工程中 打开安装MySQL的目录,在windows系统中如果是默认路径,应该和我...
    99+
    2023-09-03
    数据库
  • 使用C#连接并读取MongoDB数据库
    在上篇文章中,讲解了MongoDB的基本操作,包括增、删、改、查,但是这些操作都是在命令行模式下进行的,这篇文章中讲解如何使用C#程序连接到MongoDB数据库,并且读取里面的文档。...
    99+
    2022-11-13
  • Linux下C++/C连接MySQL数据库
        用c++/c连接 MySQL 数据库有两种方法:    第一种:利用ADO连接    第二种:利用...
    99+
    2022-10-18
  • C#如何连接MySQL数据库
    本文章是建立在已经安装MySQL数据库的前提,默认安装在C:\Program Files (x86)\MySQL,建议在安装时选中Connector.NET 6.9的安装,里面有MySQL与C#连接的动态链接库。  ...
    99+
    2022-05-24
    c# mysql c# 连接数据库 c# 连接MySQL数据库
  • C++连接mysql数据库并读取数据的具体步骤
    目录1、需要包含mysql API的头文件2、连接mysql具体步骤2.1 mysql_real_connect2.2 mysql_query 或 mysql_real_query2...
    99+
    2023-05-17
    c++连接mysql数据库代码 c++ 连接mysql c++与mysql数据库连接
  • jmeter连接数据库并使用
    添加Mysql jdbc驱动包 1)下载驱动包 2)测试计划里面添加驱动包到classpath    2、添加JDBC Connection Configuration 右击线程组依次选择    填写配置信息:         Var...
    99+
    2016-01-08
    jmeter连接数据库并使用 数据库入门 数据库基础教程 数据库 mysql
  • c#怎么用mysql数据库连接池
    c#用mysql数据库连接池的示例:class DbConn{private const int MaxPool=10;//最大连接数private const int MinPool=5;//最小连接数private const bool...
    99+
    2022-10-13
  • 使用Python连接并操作mysql数据库方法
    下面讲讲关于使用Python连接并操作mysql数据库方法,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完使用Python连接并操作mysql数据库方法这篇文章你一定会有所受益。...
    99+
    2022-10-18
  • C#连接Mysql数据库的方法
    C#连接Mysql数据库的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!本文讲的是C#连接Mysql数据库,下文附有详...
    99+
    2022-10-18
  • C++中怎么连接MySqL数据库
    这期内容当中小编将会给大家带来有关C++中怎么连接MySqL数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C++连接MySqL数据库代码示例:#include < stdi...
    99+
    2023-06-17
  • IDEA连接MySQL数据库并执行SQL语句使用数据
    文章目录 一、IDEA连接MySQL数据库(一)首先新建普通Java项目(二)连接数据库1、点击右侧DataBase2、点击加号,找到MySQL,添加数据库3、输入用户名和密码,点击**Tes...
    99+
    2023-08-31
    mysql 数据库 intellij-idea
  • C#连接sql数据库并返回数据集类
    建立一个公共类SqlConnct,以后每次连接数据库进行查询操作时就调用这个类,调用时传入sql查询参数。using System; using System.Collections.G...
    99+
    2022-10-18
  • 使用PHP连接MySQL数据库
    随着 web 开发和数据存储需求的不断增加,连接数据库已经成为了 PHP 开发中的常见任务。其中,MySQL 数据库是广泛采用的一种关系型数据库,而 PHP 也提供了一套完整的 API,使得连接 MySQL 数据库变得十分简单。在这篇文章中...
    99+
    2023-05-15
    MySQL PHP 连接
  • 使用IDEA连接Mysql数据库
      目录 前言 一、打开数据库服务器 二、打开IDEA连接数据库 总结 前言 IntelliJ IDEA集成了众多插件,方便开发者使用,使用其自带的Database模块就可以很方便的配置、连接到数据库,本次操作以MySQL为例(本实验需...
    99+
    2023-08-31
    java intellij idea mysql 数据库 database
  • SpringBoot连接MYSQL数据库并使用JPA进行操作
    今天给大家介绍一下如何SpringBoot中连接Mysql数据库,并使用JPA进行数据库的相关操作。步骤一:在pom.xml文件中添加MYSQl和JPA的相关Jar包依赖,具体添加位置在dependencies中,具体添加的内容如下所示。&...
    99+
    2023-05-31
    jpa mysql spring
  • C# (江湖小新)- 连接Mysql数据库
    依赖插件 MySql.Data安装  使用之前需要先在 vs中安装MySql.Data 插件,本文采用 Nuget 方式安装 ,步骤如下: 选中项目右键——》管理Nuget程序包  输入 MySql.Data ,搜索安装即可 ...
    99+
    2023-10-04
    数据库 c# .net wpf mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作