Connection

Driver

PreparedStatement

ResultSet

ResultSetMetaData

Statement

下载安装mysql connector c++, 启动mysql, 使用test database.

准备数据(使用官方提供的示例数据, 参考 MySQL手册 3.3.3 http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html)

CREATE TABLE pet (

name VARCHAR(20),

owner VARCHAR(20),

species VARCHAR(20),

sex CHAR(1),

birth DATE,

death DATE

);

导入数据(路径可以为相对路径或绝对路径)

LOAD DATA LOCAL INFILE 'pet.txt' INTO TABLE pet;

pet.txt(修改中间的间隔为\t)

FluffyHaroldcatf1993-02-04\N

ClawsGwencatm1994-03-17\N

BuffyHarolddogf1989-05-13\N

FangBennydogm1990-08-27\N

BowserDianedogm1979-08-311995-07-29

ChirpyGwenbirdf1998-09-11\N

WhistlerGwenbird\N1997-12-09\N

SlimBennysnakem1996-04-29\N

示例代码

#include

#include "mysql_driver.h"

#include "mysql_connection.h"

#include "cppconn/driver.h"

#include "cppconn/statement.h"

#include "cppconn/prepared_statement.h"

#include "cppconn/metadata.h"

#include "cppconn/exception.h"

int main() {

const char* user = "root";

const char* passwd = "";

const char* host = "tcp://localhost:3306";

const char* database = "test";

try {

sql::mysql::MySQL_Driver* driver =

sql::mysql::get_mysql_driver_instance();

sql::Connection* conn = driver->connect(host, user, passwd);

conn->setSchema(database);

std::cout << "status: " << conn->isClosed() << std::endl;

sql::Statement *stmt = conn->createStatement();

sql::ResultSet *res = stmt->executeQuery("select 1;");

while (res->next()) {

std::cout << res->getInt(1) << std::endl;

}

res = stmt->executeQuery("select * from pet;");

while (res->next()) {

std::cout << res->getString(1) << ",";

std::cout << res->getString(2) << ",";

std::cout << res->getString(3) << ",";

std::cout << res->getInt(4) << ",";

std::cout << res->getString(5) << ",";

std::cout << res->getString(6) << std::endl;

}

delete res;

delete stmt;

delete conn;

} catch (sql::SQLException& e) {

std::cout << "# ERR: SQLException in " << __FILE__;

std::cout << "(" << __FUNCTION__ << ") on line " << __LINE__ << std::endl;

std::cout << "# ERR: " << e.what();

std::cout << " (MySQL error code: " << e.getErrorCode();

std::cout << ", SQLState: " << e.getSQLState() << " )" << std::endl;

}

return 0;

}

运行结果

status: 0

1

Fluffy,Harold,cat,0,1993-02-04,

Claws,Gwen,cat,0,1994-03-17,

Buffy,Harold,dog,0,1989-05-13,

Fang,Benny,dog,0,1990-08-27,

Bowser,Diane,dog,0,1979-08-31,1995-07-29

Chirpy,Gwen,bird,0,1998-09-11,

Whistler,Gwen,bird,0,1997-12-09,

Slim,Benny,snake,0,1996-04-29,

参考文档:

官方手册: http://dev.mysql.com/doc/refman/5.6/en/connector-cpp.html

MySQL Connector/C++文档翻译: http://www.cnblogs.com/dvwei/archive/2013/04/18/3029464.html

mysql connection.h_MySQL connector c++使用笔记相关推荐

  1. mysql 浮点数 字节_数据库学习笔记之MySQL(02)

    目录 01. 数据表的组成 02. 数据表创建的前提 03. 数据表的创建语法规范 04. MySQL中的数据类型 05. 数值型包含哪些 06. 字符串类型 07. 日期时间类型 正文 01. 数据 ...

  2. mysql connection是什么_记一次MySQL出现too many connection

    今天中午的时候突然接到报警,MySQL连接数暴增..本来设置的max_conntion=6000, 这个数值连接已经够用.接到报警速度连接服务器连接mysql总是报如下错误: [mysql@local ...

  3. mysql类似的数据库_MemSQL学习笔记-类似MySQL的数据库

    http://gigaom.com/cloud/ex-facebookers-launch-memsql-to-make-your-database-fly/ -- 多主-从 http://www.m ...

  4. 《MYSQL是怎样运行的》笔记|配置文件|系统变量|字符集|InnoDB存储结构|数据页结构|索引结构与使用|数据目录|表空间|连表原理|查询优化|BufferPool|事务|redo与undo|锁

    <MYSQL是怎样运行的>笔记 前记: 历时15天,笔记+看书.完成于2022.2.5. 本书是讲具体的数据库实现,而数据库系统概念见:https://blog.csdn.net/qq_4 ...

  5. connection error mysql_MySQL数据库之Dr.Elephant mysql connection error

    本文主要向大家介绍了MySQL数据库之Dr.Elephant mysql connection error ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. This is the ...

  6. 《MySQL实战45讲》——学习笔记04-05 “深入浅出索引、最左前缀原则、索引下推优化“

    04 | 深入浅出索引(上) 1. 什么是索引? 索引的出现其实就是为了提高数据查询的效率,就像书的目录一样,书有500页,每页存的都是书的内容,目录可能只有5页,只存了页码:通过目录能快速找到某个主 ...

  7. 《MySQL实战45讲》——学习笔记12 “InnoDB刷脏页的控制策略“

    本篇介绍MYSQL InnoDB的WAL机制带来的小问题--利用WAL技术,数据库将随机写转换成了顺序写,大大提升了数据库的性能,但也带来了内存脏页的问题: 脏页会被后台线程自动flush,也会由于数 ...

  8. 《MySQL实战45讲》——学习笔记01-03 “MySQL基本架构、日志系统、事务隔离“

    最近有新闻说"丁奇"炒股失败欠债,赶紧去极客时间买了他的<MySQL 实战 45 讲>以防下架,顺带重新系统的复习下MYSQL相关知识,记录下学习笔记: 本篇介绍: M ...

  9. 5天学习MYSQL数据库第一天剩余全部笔记(超级详细的mysql入门笔记适合新手反复看加深记忆)

    这是关于五天学习MYSQL数据库的笔记,如果想要观看视频可以访问(视频链接(b站) 或者访问视频链接 之前的笔记已经记到了1.3的mysql基本介绍,接下来主要是: 2.1MySQL服务端框架 一. ...

  10. 【MVC+MySQL+EntityFramework】查询性能优化笔记

    通过在DbContext中定了表之间的关系,查询后在View中通过item.ProjectOverHour来显示关联表数据. modelBuilder.Entity<ProjectOverHou ...

最新文章

  1. python 之 分割参数getopt
  2. k8s部署mysql集群(statefulset):主写从读、一主多从集群
  3. 2019牛客暑期多校训练营(第九场)
  4. linux云服务器上安装JDK
  5. C++计算函数执行时间的两种方法
  6. 第三方组件曝多个严重漏洞,飞利浦 Vue PACS 医学成像系统受影响
  7. 数组成员是函数java_在Laravel 5.6中调用数组上的成员函数links()
  8. 栈的出入js实现_js 实现栈的结构
  9. 水系图一般在哪里找得到_虹吸雨水排水系统相较于传统重力排水有哪些优点?...
  10. JPG格式图片怎么减小体积?一招教你轻松压缩JPG图片
  11. 芝加哥大学计算机博士年薪,2020年芝加哥大学博士含金量
  12. 物理地址通过什么协议转换为ip地址
  13. 主引导记录(MBR)的反汇编分析
  14. 服务器自动打印,小技巧! —让打印机自动承担打印任务
  15. tensortAPI的learning
  16. SpringBoot:入门简单使用
  17. 大战在即!手机芯片巨头“All in”智能汽车,5G只是冰山一角
  18. 动手深度学习笔记(一)2.1数据操作
  19. 静态ip和动态ip的区别能说明什么?怎么根据区别选择?
  20. day1学习vue2笔记 vue指令

热门文章

  1. 厌倦 VMware,试试更轻量级的虚拟机!
  2. 「大数据知识体系总结(2021版)」开放下载了!
  3. 掌握中台系统,需要了解哪些技术?
  4. 分享一下我作为面试官面试了几个java程序员后的感受
  5. 你们公司的业务是部署在什么平台?
  6. 安卓 卡顿 APP
  7. mysql全局sce_cisco SCE 第二部分 SCE平台的安装配置
  8. MyBatis 基础知识
  9. Linux解压bz2文件的方法
  10. java cookie详解