linux下C连接mysql示例
来源:互联网 发布:hishop云商城2.0源码 编辑:程序博客网 时间:2024/05/01 06:47
环境: linux mysql5.5 gcc
1:安装mysql5.5【安装步骤省略】,安装目录为/usr/local/mysql-5.5/
2:编写mysql_1.c文件:
3:编译生成执行文件,命令如下:
gcc `mysql_config --cflags` -o mysql_1.o -c mysql_1.c 【`mysql_config --cflags`是为了找到头文件mysql.h】
gcc `mysql_config --libs` -o mysql_1 mysql_1.o
4: 执行命令 ./mysql_1 出现错误,错误如下:
./mysql_1: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
5:创建动态库的软连接,命令如下:
ln -s /usr/local/mysql-5.5/lib/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient.so.18
Connected to Mysql successfully!
至此结束!
1:安装mysql5.5【安装步骤省略】,安装目录为/usr/local/mysql-5.5/
2:编写mysql_1.c文件:
#include <stdio.h>#include <string.h>#include "mysql.h"int main(int argc,char *argv[]){ MYSQL mysql; mysql_init(&mysql); if(!mysql_real_connect(&mysql, "localhost", "root", "", "mysql", 0, NULL, 0)) { printf("Failed to connect to Mysql!\n"); return 0; }else { printf("Connected to Mysql successfully!\n"); } mysql_close(&mysql); return 0;}
3:编译生成执行文件,命令如下:
gcc `mysql_config --cflags` -o mysql_1.o -c mysql_1.c 【`mysql_config --cflags`是为了找到头文件mysql.h】
gcc `mysql_config --libs` -o mysql_1 mysql_1.o
4: 执行命令 ./mysql_1 出现错误,错误如下:
./mysql_1: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
5:创建动态库的软连接,命令如下:
ln -s /usr/local/mysql-5.5/lib/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient.so.18
ldconfig 【ldconfig是一个动态链接库管理命令,为了让动态链接库为系统所共享】
Connected to Mysql successfully!
至此结束!
最后再附上一段c查询数据库的程序:
#include <stdio.h>#include <string.h>#include "mysql.h"int main(){ MYSQL mysql; MYSQL_RES *res; MYSQL_ROW row; char *query; int flag, t; unsigned int num_fields; unsigned int i; MYSQL_FIELD *fields; mysql_init(&mysql); if(!mysql_real_connect(&mysql, "localhost", "root", "", "mysql", 0, NULL, 0)) { printf("Failed to connect to Mysql!\n"); return 0; }else { printf("Connected to Mysql successfully!\n"); } query = " select db,name from mysql.proc "; flag = mysql_real_query(&mysql, query, (unsigned int)strlen(query)); if(flag) { printf("Query failed!\n"); return 0; }else { printf("[%s] made...\n", query); } res = mysql_store_result(&mysql); printf("result : %d records\n", mysql_num_rows(res)); printf("fields column:"); num_fields = mysql_num_fields(res); fields = mysql_fetch_fields(res); for(i = 0; i < num_fields; i++) { printf("%u:%s\t", (i+1), fields[i].name); } printf("\n"); while(row = mysql_fetch_row(res)) { for(t=0; t<mysql_num_fields(res); t++) { printf("%s\t", row[t]); } printf("\n"); } mysql_close(&mysql); return 0;}
0 0
- linux下C连接mysql示例
- linux下C连接mysql
- linux下C连接mysql
- linux下c连接mysql
- linux下c连接mysql问题
- LINUX下用C连接MYSQL
- LINUX下C语言连接mysql
- linux下c语言连接mysql数据库
- Linux下C语言连接MySQL
- Linux下C连接MySQL数据库方法
- Linux下C语言连接MySQL
- Linux下C连接MySQL数据库
- linux下C语言连接mysql
- LINUX下C语言连接mysql
- linux下c与MySQL连接
- Linux下配置C/C++连接Mysql
- Linux下C语言连接MySQL
- Linux c连接xampp下的mysql
- JAVA学习之静态内部类(二)
- [CentOS]如何解决gcc版本冲突?
- iframe用法总结
- JSONObject与JSONArray的使用
- <%@ include file="relativeURL" %>静态及<jsp:include>动态
- linux下C连接mysql示例
- C语言IP有效性检查
- 查询Oracle的一些相关信息
- Android onNewIntent
- 怎样提高程序效率
- android 打包 /${zipalign}" error=2, No such file or directory
- Solr学习总结-Facet
- Oracle不等值链接
- 定时弹出层