C++访问mysql数据库
C++连接mysql数据库,并取数据进行显示
本例中,在mysql中已经存在了一个数据库test,并在test数据库中创建了一张表stu做测试,表中包含3个字段
需要把mysql目录下的libmysql.lib拷贝到当前目录
代码如下:
/*
** C语言连接mysql
*/
#include <winsock.h>
#include <mysql.h>
#include <iostream>
#include <list>
using namespace std; #pragma comment(lib, "libmysql.lib")
// 定义全局变量
MYSQL mysql; struct RecvStruct
{
char stuID[];
char stuName[];
char stuAge[];
}; // 建立连接
BOOL ConnDB(const char *host, const char *user, const char *passwd, const char *dbName)
{
// 初始化MYSQL结构
mysql_init(&mysql);
// 连接数据库
if(mysql_real_connect(&mysql, host, user, passwd, dbName, , NULL, ) != NULL)
{
// 成功建立连接
return TRUE;
}
else
{
// 建立连接失败
return FALSE;
}
}
// 取出数据
list<RecvStruct> GetAllRecv()
{
// 用于保存结果
std::list<RecvStruct> recList;
// 查询语句
std::string strsql = "select * from stu";
// 执行查询
if(mysql_real_query(&mysql, strsql.data(), strsql.length()) == )
{
// 取得查询结果
MYSQL_RES *pRes = NULL;
pRes = mysql_store_result(&mysql);
if(pRes != NULL)
{
// 取得结果
MYSQL_ROW row;
while(row = mysql_fetch_row(pRes))
{
// 保存信息
RecvStruct rs;
if(row[] != NULL)
{
strcpy(rs.stuName, row[]);
}
if(row[] != NULL)
{
strcpy(rs.stuID, row[]);
}
if(row[] != NULL)
{
strcpy(rs.stuAge, row[]);
}
// 加入list
recList.push_back(rs);
}
}
}
return recList;
}
// 关闭数据库
void MysqlClose()
{
// 关闭数据库,释放资源
} int main()
{
// 连接数据库
if(ConnDB("127.0.0.1", "root", "", "test"))
{
// 成功
std::list<RecvStruct> recvList = GetAllRecv();
// 显示记录
for(list<RecvStruct>::iterator it = recvList.begin();it != recvList.end();it++)
{
cout << it->stuName << "\t" << it->stuID << "\t" << it->stuAge << endl;
} MysqlClose();
}
int i;
cin >> i;
return ;
}
C++访问mysql数据库的更多相关文章
- java文件来演示如何访问MySQL数据库
java文件来演示如何访问MySQL数据库. 注:在命令行或用一个SQL的前端软件创建Database. 先创建数据库: CREATE DATABASE SCUTCS; 接着,创建表: CREATE ...
- PHP访问MySql数据库介绍
在网站后台,经常要与数据库打交道.本文介绍如何使用XAMPP来管理MySql数据库及如何用PHP来访问MySql数据库. 一.使用XAMPP来管理MySql数据库 首先使用XAMPP打开MySql的管 ...
- C#连接、访问MySQL数据库
一.准备工具 visual stuido(本示例使用visual studio 2010) MySql.Data.dll mysql_installer_community_V5.6.21.1_set ...
- 在Eclipse中使用JDBC访问MySQL数据库的配置方法
在Eclipse中使用JDBC访问MySQL数据库的配置方法 分类: DATABASE 数据结构与算法2009-10-10 16:37 5313人阅读 评论(10) 收藏 举报 jdbcmysql数据 ...
- C#访问MySQL数据库(winform+EF)
原文:C#访问MySQL数据库(winform+EF) 以前都是C#连接SQLServer,现在MySQL也比较火了,而且是开源跨平台的,这里连接使用一下,主要是体会一下整个流程,这里使用的是winf ...
- Spring Boot入门(六):使用MyBatis访问MySql数据库(注解方式)
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 本篇博客我们讲解下在Spring Boot中使用MyBatis访问MySql数据库的简单用法. 1.前期 ...
- html页面通过http访问mysql数据库中的内容,实现用户登录的功能
需求: 通过html编写用户登录页面,页面内容包括用户名.密码和登录按钮,点击登录后访问login.php文件,使用按钮默认的submit提交用户名和密码,在login.php中访问mysql数据库, ...
- 关于利用PHP访问MySql数据库的逻辑操作以及增删改查实例操作
PHP访问MySql数据库 <?php //造连接对象$db = new MySQLi("localhost","root","",& ...
- C#访问MySQL数据库的方法
C#访问MySQL数据库的方法 (1)首先需要下载C#访问MySQL数据库的ADO.NET驱动程序 下载地址为: http://dev.mysql.com/downloads/connector/ne ...
- MySQL入门很简单: 15 java访问MySQL数据库
1. 连接数据库 1.1 下载安装驱动 java通过JDBC(Java Database Connectivity,Java数据库连接)来访问MySQL数据库.JDBC的编程接口提供的接口和类与MyS ...
随机推荐
- Windows 10 Pro_Ent Insider Preview x86 x64 10147中文版激活
点击激活windows输入密钥:CC6JP-VN67C-8KCJ4-4V48V-HXM9B然后下载附件中的程序解压后运行注销即可激活企业版:在专业版基础上输入升级密钥:CKFK9-QNGF2-D34F ...
- 全球免费知名DNS服务器
全球免费知名DNS服务器 jalone 2013-06-18 14:25:46 最近老是发表DNS相关文章,今天继续说DNS,国内75%以上的家用宽带路由器存在严重的安全隐患:用户浏览网页的时候其DN ...
- Dell笔记本Ubuntu无线网卡驱动安装
[日期:2010-06-09] 经过长时间学习Ubuntu无线网卡,,你可能会遇到Ubuntu无线网卡问题,,这里将介绍Ubuntu无线网卡问题的解决方法整了一晚上,终于在我的dell 1440上 ...
- 给maven仓库添加镜像
用maven下载好慢啊,快试试阿里云镜像吧!修改$MAVEN_HOME/conf/settings.xml <!-- 阿里云仓库 --> <mirror> <id> ...
- shell脚本条件判断
http://blog.csdn.net/ws_zll/article/details/7515310
- java.sql.SQLException: 索引中丢失 IN 或 OUT 参数:: 1
String sql1 = "insert into TEST_RELEVANCEEXPORT" + " (ID, YYCSDM, YYCSMC, ...
- (转)Stack Overflow 2016最新架构探秘
这篇文章主要揭秘 Stack Overflow 截止到 2016 年的技术架构. 首先给出一个直观的数据,让大家有个初步的印象. 相比于 2013 年 11 月,Stack Overflow 在 20 ...
- iOS开发 - 用AFNetworking实现https单向验证,双向验证
https相关 自苹果宣布2017年1月1日开始强制使用https以来,htpps慢慢成为大家讨论的对象之一,不是说此前https没有出现,只是这一决策让得开发者始料未及,博主在15年的时候就做过ht ...
- C#封装百度Web服务API处理包含(Geocoding API,坐标转换API)
1.创建基础参数类 public static class BaiduConstParams { public const string PlaceApIv2Search = "http:/ ...
- Python floor() 函数
描述 floor(x) 函数返回一个小于或等于 x 的的最大整数(向下取整) 语法 以下是 floor() 方法的语法: import math math.floor( x ) 注意:floor()是 ...