1 需要安装mysql客户端

安装mysql

2 查看依赖

mysql_config --cflags --libs

安装依赖:yum install mysql-devel

3 导入头文件

#include <mysql.h>

4 相关代码

  1 #include <stdio.h>
  2 #include <mysql.h>
  3
  4 #define HOST "localhost"
  5 #define USERNAME "root"
  6 #define PASSWORD ""
  7 #define DATABASE "test"
  8
  9 void insert_sql(char * sql);
 10 void query_sql(char* sql);
 11
 12 int main(int argc,char *argv[])
 13 {
 14     //insert_sql("insert into test values('user','123456')");
 15     query_sql("select * from test");
 16     return 0;
 17 }
 18
 19 void insert_sql(char * sql)
 20 {
 21     MYSQL conn;
 22     int res;
 23     mysql_init(&conn);
 24     if(mysql_real_connect(&conn,"localhost","root","","test",0,NULL,CLIENT_FOUND_ROWS))
 25     {
 26     printf("connect success!\n");
 27     res=mysql_query(&conn,sql);
 28     if(res)
 29     {
 30         printf("error\n");
 31     }
 32     else
 33     {
 34         printf("OK\n");
 35     }
 36     mysql_close(&conn);
 37     }
 38
 39 }
 40
 41 void query_sql(char* sql)
 42 {
 43     MYSQL my_connection; /*这是一个数据库连接*/
 44     int res; /*执行sql語句后的返回标志*/
 45     MYSQL_RES *res_ptr; /*指向查询结果的指针*/
 46     MYSQL_FIELD *field; /*字段结构指针*/
 47     MYSQL_ROW result_row; /*按行返回的查询信息*/
 48
 49     int row, column; /*查询返回的行数和列数*/
 50     int i, j; /*只是控制循环的两个变量*/
 51
 52     /*初始化mysql连接my_connection*/
 53     mysql_init(&my_connection);
 54
 55     /*这里就是用了mysql.h里的一个函数,用我们之前定义的那些宏建立mysql连接,并
 56      *     返回一个值,返回不为空证明连接是成功的*/
 57     if (mysql_real_connect(&my_connection, HOST, USERNAME, PASSWORD, DATABASE, 0, NULL, CLIENT_FOUND_ROWS))
 58     {
 59     /*连接成功*/
 60     printf("数据库查询query_sql连接成功!\n");
 61     /*这句话是设置查询编码为utf8,这样支持中文*/
 62     mysql_query(&my_connection, "set names utf8");
 63
 64     /*下面这句话就是用mysql_query函数来执行我们刚刚传入的sql語句,
 65      *         这会返回一个int值,如果为0,证明語句执行成功*/
 66     res = mysql_query(&my_connection, sql);
 67
 68     if (res)
 69     { /*现在就代表执行失败了*/
 70         printf("Error: mysql_query !\n");
 71         /*不要忘了关闭连接*/
 72         mysql_close(&my_connection);
 73     }
 74     else
 75     {
 76         /*现在就代表执行成功了*/
 77         /*将查询的結果给res_ptr*/
 78         res_ptr = mysql_store_result(&my_connection);
 79
 80         /*如果结果不为空,就把结果print*/
 81         if (res_ptr)
 82         {
 83         /*取得結果的行数和*/
 84         column = mysql_num_fields(res_ptr);
 85         row = mysql_num_rows(res_ptr) + 1;
 86         printf("查询到 %lu 行 \n", row);
 87
 88         /*输出結果的字段名*/
 89         for (i = 0; field = mysql_fetch_field(res_ptr); i++)
 90             printf("%s\t", field->name);
 91         printf("\n");
 92
 93         /*按行输出結果*/
 94         for (i = 1; i < row; i++)
 95         {
 96             result_row = mysql_fetch_row(res_ptr);
 97             for (j = 0; j < column; j++)
 98             printf("%s\t", result_row[j]);
 99             printf("\n");
100         }
101
102         }
103         mysql_free_result(res_ptr);
104         /*不要忘了关闭连接*/
105         mysql_close(&my_connection);
106         /*释放资源*/
107         mysql_library_end();
108     }
109     }
110 } 

完整代码

5  编译

g++ testmysql.cpp `mysql_config --cflags --libs` -o test

参考资料:

https://www.cnblogs.com/wunaozai/p/3618383.html

http://blog.csdn.net/fykhlp/article/details/5950485#

转载于:https://www.cnblogs.com/swyroc/p/10678217.html

c++操作mysql相关推荐

  1. DOS命令行操作MySQL常用命令

    平时用可视化界面用惯了,如果紧急排查问题,没有安装可视化工具的话,只能通过命令来看了. 以备不时之需,我们要熟悉一下命令行操作MySQL. 打开DOS命令窗口:WIN + R 输入cmd,回车 然后输 ...

  2. c语言连接数据库例子,c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual help).doc...

    这是精心收集的精品经典资料,值得下载保存阅读! c语言操作mysql数据库小例子_互帮互助(C language MySQL database operation example _ mutual h ...

  3. python3操作mysql教程_python3操作mysql教程

    一.下载\安装\配置 1. python3 当前最新版本是python3.2,下载地址是 http://www.python.org/ftp/python/3.2.3/python-3.2.3.msi ...

  4. linux mysql c语言编程,在Linux下通过C语言操作MySQL数据库

    2010年1月27日 晚 22:10 作者:longyun(http://www.linuxdiyf.com/mailto:mtd527@gmail.com) 续:小弟最近想学习数据库,并想开发一个简 ...

  5. python如何控制mysql_python如何操作mysql

    mysql 使用 启动服务 sudo systemctl start mysql pip3 install pymysql python 操作数据库: 定义类 import pymysql class ...

  6. c 获取mysql列数据_转 用C API 操作MySQL数据库

    用C API 操作MySQL数据库 参考MYSQL的帮助文档整理 这里归纳了C API可使用的函数,并在下一节详细介绍了它们.请参见25.2.3节,"C API函数描述". 函数 ...

  7. Python模块MySQLdb操作mysql出现2019错误:Can't initialize character set utf-8

    我使用python的MySQLdb模块实现了一个mysql client, 在测试时,出现了如下错误 Python模块MySQLdb操作mysql出现2019错误:Can't initialize c ...

  8. nodejs操作sqlserver数据_pyspark操作MySQL、SQLServer数据库进行数据处理操作

    欢迎访问本人的CSDN博客[Together_CZ],我是沂水寒城. https://yishuihancheng.blog.csdn.net 在大数据处理领域里面,Hadoop和spark可以说是最 ...

  9. python mysql批量insert数据、返回id_Python3 操作 MySQL 插入一条数据并返回主键 id的实例...

    Python 中貌似并没有直接返回插入数据 id 的操作(反正我是没找到),但是我们可以变通一下,找到最新插入的数据 #!/usr/bin/env python3 # -*- coding: UTF- ...

  10. php使用pdo操作mysql数据库实例_php5使用pdo连接数据库实例

    本文为大家介绍下php pdo的用法. 一,pdo简介 pdo(php data object) 是php 5 中加入的东西,是php 5新加入的一个重大功能,因为在php 5以前的php4/php3 ...

最新文章

  1. Visual Studio提示Bonjour backend初始化失败
  2. python中size的用法_在Python中PyArray_SIZE的正确用法是什么?
  3. python语言是一门编程语言_python是一门怎样的编程语言?老男孩python入门
  4. php重定向页面位置,php - PHP重定向到基于页面版本的用户位置(IPAPI),并在会话中记住 - SO中文参考 - www.soinside.com...
  5. 《TCP/IP详解》学习笔记(二):数据链路层
  6. 医生c语言测试卷b卷的答案,合肥工业大学C语言期中测试题_B卷
  7. 85后转行java,一名85后阿里老程序员的真心话
  8. 初分配和再分配图解_针织好看暖和的儿童帽子图解教程,宝妈们千万不要错过...
  9. 常用的linux文件权限
  10. 今日恐慌与贪婪指数为75 贪婪程度有所缓解
  11. 2021年中国中性段开关检测器市场趋势报告、技术动态创新及2027年市场预测
  12. oracle优化日记脚本
  13. 2019杭电多校第六场 HDU6638 Snowy Smile(线段树区间合并+枚举)
  14. Python画好看的星空图
  15. 在计算机网络中ftp服务器的用途是,FTP的作用以及传输文件的一般步骤
  16. 如何在https协议下访问http等不安全的资源
  17. 用python计算转换温度
  18. 【从0到1搭建LoRa物联网】10、LoRa终端ASR6505 ADC采样
  19. 如何从零打造爆款小程序
  20. 在一个项目编译多个不同签名、包名、资源实现apk换皮

热门文章

  1. const修饰成员函数总结
  2. 说明使用tc编程的一般步骤 c语言,TC编程手册详解-完整版.doc
  3. PAT (Basic Level) Practice1017 A除以B
  4. Linux下update和upgrade的区别
  5. Cmake构建_设置debug与release不同名字
  6. Windows核心编程_调用控制台窗口
  7. TabLayout+ViewPager+Fragment(内部:TabLayout+ViewPager+ Fragment)需要注意!!
  8. 文件上传时判断文件夹是否存在
  9. cocos2d-x自制工具02:AnimatePacker v1.1beta发布!!~!
  10. 基于redis集群实现的分布式锁,可用于秒杀,定时器。