linux_connect_mysql
原文来自 https://www.cnblogs.com/lywy510/p/3615710.html
#include <stdio.h>
#include <stdlib.h>
#include <string.h> #include <mysql/mysql.h> MYSQL *g_conn;
MYSQL_RES *g_res;
MYSQL_ROW g_row; #define MAX_BUF_SIZE 1024 const char *g_host_name = "localhost";
const char *g_user_name = "root";
const char *g_password = "Ll123456..";
const char *g_db_name = "c_test";
const unsigned int g_db_port = ; void print_mysql_error(const char *msg) {
if (msg)
printf("%s:%s\n",msg,mysql_error(g_conn));
else
puts(mysql_error(g_conn));
} int executesql(const char *sql) {
if (mysql_real_query(g_conn,sql,strlen(sql)))
return -; return ;
} int init_mysql() {
g_conn = mysql_init(NULL);
if (!mysql_real_connect(g_conn,g_host_name,g_user_name,g_password,g_db_name,g_db_port,NULL,))
return -; return ;
} int main()
{
printf("hello world\n");
if (init_mysql())
print_mysql_error(NULL);
char sql[MAX_BUF_SIZE];
if (executesql(sql))
print_mysql_error(NULL);
if (executesql("select * from user;"))
print_mysql_error(NULL); g_res = mysql_store_result(g_conn);
int iNum_rows = mysql_num_rows(g_res);
int iNum_fields = mysql_num_fields(g_res);
printf("line = %d\t constent = %d\n", iNum_rows, iNum_fields);
puts("id\tname\n"); while ((g_row=mysql_fetch_row(g_res)))
printf("%s\t%s\n", g_row[], g_row[]); mysql_free_result(g_res);
mysql_close(g_conn);
return ;
}
编译命令
mysql 库文件自己找一下, 一般会使 mysql-dev.....
希望对你有用
linux_connect_mysql的更多相关文章
随机推荐
- JVM 调优参数详解
GC有两种类型:Scavenge GC 和Full GC 1.Scavenge GC 一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,堆的Eden区域进行GC, ...
- Junit之测试顺序---FixMethodOrder
参考:http://www.cnblogs.com/lukehuang/archive/2013/08/27.html Brief Junit 4.11里增加了指定测试方法执行顺序的特性 测试类的执行 ...
- python第十四课--排序及自定义函数之自定义函数(案例二)
案例二: python中定义有/无返回值的函数,演示python没有函数重载这一说 需求:自定义函数:计算两个整数的和值两个原则:1).有没形参有,两个 2).有没返回值可有可无 def my_sum ...
- HDU 5550 - Game Rooms(DP + 前缀和预处理)
链接: http://acm.hdu.edu.cn/showproblem.php?pid=5550 题意: 一个大楼有n(2≤n≤4000)层,每层可以建一个乒乓球房或者一个游泳房,且每种房间在大楼 ...
- 【转】iOS:AvPlayer设置播放速度不生效的解决办法
现象: 项目有一个需求是实现视频的慢速播放,使用的是封装的AvPlayer,但是设置时发现比如设置rate为0.5,0.1,0.01都是一样的速度,非常疑惑.后来经过查找资料,发现iOS10对这个AP ...
- Js 面向对象之封装,继承,原型,原型链
封装 ,继承 ,原型, 原型链 封装 ? 面向对象有三大特性,封装.继承和多态.对于ES5来说,没有class(类)的概念,并且由于JS的函数级作用域(函数内部的变量在函数外访问不到),所以我们就可以 ...
- linux下10款markdown软件
原文:https://linux.cn/article-7623-1.html 在这篇文章中,我们会点评一些可以在 Linux 上安装使用的最好的 Markdown 编辑器. 你可以在 Linux 平 ...
- openstack常用的一些命令
查看rabbitmq 队列 rabbitmqctl list_queues 复制代码 查看keystone的用户 keystone user-list 复制代码 查看keystone endpoint ...
- 基于AppDomain的"插件式"开发
很多时候,我们都想使用(开发)USB式(热插拔)的应用,例如,开发一个WinForm应用,并且这个WinForm应用能允许开发人员定制扩展插件,又例如,我们可能维护着一个WinService管理系统, ...
- Android攻城狮学习笔记-进阶篇一
点击快速抵达: 第1章 AndroidManifest配置文件 第2章 使用ListView显示信息列表 第3章 使用DatePicker及TimePicker显示当前日期和时间 第4章 使用Grid ...