mysql C API的使用
《MySQL++简介》介绍了如何使用C++来访问mysql,本文记录下使用C API访问mysql,mysql++就是对本文介绍的C-API的封装。
常用函数(名字就能告诉我们用法):
MYSQL * mysql_init(MYSQL *mysql)
int mysql_options(MYSQL *mysql,enum mysql_option option,
const char *arg)//设置一些如编码等属性
MYSQL * mysql_real_connect(MYSQL *mysql, const char *host,
const char *user,
const char *passwd,
const char *db,
unsigned int port,
const char *unix_socket,
unsigned long clientflag) //建立连接
int mysql_query(MYSQL *mysql, const char *q) //执行sql语句,Zero for success. Nonzero if an error occurred.
my_ulonglong mysql_affected_rows(MYSQL *mysql) //更新语句影响的行数
MYSQL_RES * mysql_store_result(MYSQL *mysql) //与mysql_use_result效果等同,获取sql执行结果
MYSQL_RES * mysql_use_result(MYSQL *mysql)
my_ulonglong mysql_num_rows(MYSQL_RES *res) //获取行数
MYSQL_ROW mysql_fetch_row(MYSQL_RES *result) //逐一取行
void mysql_free_result(MYSQL_RES *result)
void mysql_close(MYSQL *sock)
使用实例:
#include <mysql.h>
int main() {
MYSQL* mysql = mysql_init(NULL);
mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "gbk");
mysql_real_connect(mysql, "10.38.72.33", "test_user", "test_pwd", "test_db", 3306, NULL, 0); string sql("select name, age from student");
mysql_query(mysql, sql.c_str()); MYSQL_RES* res = mysql_store_result(mysql);
MYSQL_ROW row;
if (res == NULL) {
cout << "query failed" << endl;
return -1;
}
while ((row = mysql_fetch_row(res)) != NULL) {
cout << "name:" << row[0] << ",age:" << row[1] << endl;
}
mysql_free_result(res); mysql_close(mysql);
return 0;
}
mysql C API的使用的更多相关文章
- PHP数据库操作:从MySQL原生API到PDO
本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对象.PDO操作MySQL数据库的. 为了后面的测试,先建立数据库表test.包含表名user,s ...
- c++使用mysql的api连接相关问题
记录一下自己使用中的相关问题,方便有相同问题的同学解决. 关于在VS中的各种配置.看这里.只是须要注意一下,我如今用的mysql版本号是5.6的,已经没有[MySQL Server \lib\opt] ...
- mysql C API 字符串玩转备份调优
- The MySQL C API 编程实例
在网上找了一些MYSQL C API编程的文章,看了后认为还是写的不够充分,依据自己经验写了这篇<The MySQL C API 编程实例>,希望对须要调用到MYSQL的C的API的朋友有 ...
- MySQL C API概述
以下列表总结了C API中可用的功能.有关更多详细信息,请参见 第27.8.7节“C API函数描述”中的说明. my_init():在线程安全程序中初始化全局变量和线程处理程序 mysql_affe ...
- MySQL原生API、MySQLi面向过程、MySQLi面向对象、PDO操作MySQL
[转载]http://www.cnblogs.com/52fhy/p/5352304.html 本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对 ...
- MySql接口API函数综述
C API函数概述 函数 描述 mysql_affected_rows() 返回上次UPDATE.DELETE或INSERT查询更改/删除/插入的行数. mysql_autocommit() 切换 a ...
- MYSQL C API 记录
一.环境与条件 MySQL AB 提供了C API,能够提供低等级界面,负责完毕涉及SQLserver交互的大多数常规任务:数据库连接 .查询.结果集处理和错误处置.C API通过两个组件实现: 头文 ...
- MySQL C API(23)
C API 提供了对 MySQL c/s 模型的底层访问.C API 代码在 mysqlclient 库中实现.可以从该库中引用到的变量及含义: 环境变量 含义 MYSQL_UNIX_PORT 本地连 ...
随机推荐
- jquery双击事件
<html> <head><meta http-equiv="Content-Type" content="text/html; chars ...
- 关于hover
要想实现a:hover b{} 得到样式的话,a必须是b的父元素
- STM32 DMA模块的配置与使用
DMA有什么用? 直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输.无须CPU的干预,通过DMA数据可以快速地移动.这就节省了CPU的资源来做其他操作. 有多少个DMA资源 ...
- python3中返回字典的键
我在看<父与子的编程之旅>的时候,有段代码是随机画100个矩形,矩形的大小,线条的粗细,颜色都是随机的,代码如下, import pygame,sys,random from pygame ...
- 【动态规划】bzoj1663 [Usaco2006 Open]赶集
http://blog.csdn.net/u011265346/article/details/44906469 #include<cstdio> #include<algorith ...
- PHP-仿ecshop生成验证码
<?php /* 生成验证码 */ // 1.创建画布(基于已有图像) $n = mt_rand(1,5); $im = imagecreatefromjpeg('./images/captch ...
- 关于mock server
这篇技术博客是在知乎上看到的 知乎js大神张云龙写的 这里贴过来记录下,如果侵权 请告知将及时删除. --------------------------- 为了更好的分工合作,让前端能在不依赖后端环 ...
- WinForm/Silverlight多线程编程中如何更新UI控件的值
单线程的winfom程序中,设置一个控件的值是很easy的事情,直接 this.TextBox1.value = "Hello World!";就搞定了,但是如果在一个新线程中这么 ...
- 重新开源UDS
这个题目起得很纠结. 因为很多人都知道UDS本来就是开源,我只不过改了一些东西,然后重新发布,所以不算重新开源. 要说重新发布也不对.因为老早这东西就发布了. 最后我想,这个东西已经很久没更新过了,也 ...
- springmvc和struts2的差别
springmvc和struts2的区别相关内容 1.spring mvc的入口是servlet,而struts2是filter filter功能:用户可以改变一个request和修改一个resp ...