linux下C语言操作mysql数据库(系统自带版本3.23.54)
2011-04-12 23:58
531 查看
我的上一篇blog介绍了在linux环境下如何安装配置系统自带的mysql数据库,并列举了mysql的一些简单的操作。接下来我将介绍一下如何利用mysql提供给我们的API来访问并操作mysql数据库(C语言)。
首先,我们需要安装mysql-devel-3.23.54a-11.i386.rpm包,这样我们才能使用mysql提供的API和类库。mysql-devel-3.23.54a-11.i386.rpm的下载地址:http://d.download.csdn.net/down/3185399/piaojun_pj。下载之后将安装包放到/usr/local/mysql目录下(个人习惯),你也可以放在别的目录下,然后在终端输入指令,安装devel包,如下所示。
接着我们先建立一个数据库(mydb)和一个表(myuser)。
然后我们编写一个小的测试程序。
mysql_test.c
makefile
程序运行结果如下。
首先,我们需要安装mysql-devel-3.23.54a-11.i386.rpm包,这样我们才能使用mysql提供的API和类库。mysql-devel-3.23.54a-11.i386.rpm的下载地址:http://d.download.csdn.net/down/3185399/piaojun_pj。下载之后将安装包放到/usr/local/mysql目录下(个人习惯),你也可以放在别的目录下,然后在终端输入指令,安装devel包,如下所示。
接着我们先建立一个数据库(mydb)和一个表(myuser)。
然后我们编写一个小的测试程序。
mysql_test.c
#include <mysql/mysql.h> #include <stdlib.h> #define HOST "localhost" #define USERNAME "root" #define PASSWD "123456" #define DATABASE "mydb" int main() { // connect to mysql database MYSQL* connection; connection = mysql_init(NULL); if(!mysql_real_connect(connection,HOST,USERNAME,PASSWD,DATABASE,0,NULL,0)) { perror("mysql connection failed"); mysql_close(connection); exit(EXIT_FAILURE); } // exec sql query MYSQL_RES* res_ptr; MYSQL_FIELD* field; MYSQL_ROW row; char* sql = "SELECT * FROM myuser"; if(mysql_query(connection,sql) != 0) { perror("mysql query failed"); exit(EXIT_FAILURE); } // get the query result if((res_ptr = mysql_store_result(connection)) != NULL) { int col_num = mysql_num_fields(res_ptr); int row_num = mysql_num_rows(res_ptr); // print the fields name int i; for(i = 0;i < col_num;i++) { field = mysql_fetch_field(res_ptr); printf("%s ",field->name); } printf("/n"); // print query result for(i = 0;i < row_num;i++) { row = mysql_fetch_row(res_ptr); int j; for(j = 0;j < col_num;j++) { printf("%s ",row[j]); } printf("/n"); } } // disconnect mysql mysql_close(connection); return 0; }
makefile
#makefile for mysql_test mysql_test:mysql_test.c gcc mysql_test.c -o mysql_test -L/usr/lib/mysql -lmysqlclient
程序运行结果如下。
相关文章推荐
- redhat9安装配置mysql数据库(系统自带,版本3.23.54)
- Linux下删除卸载系统自带的MySQL数据库
- Linux系统中MySQL数据库操作命令(未整理)
- Linux系统操作mysql数据库
- R 语言基本操作(基本信息的查看、与本地文件系统交互、编译器版本升级)
- linux下用C/C++语言操作mysql数据库显示不了表里的汉字的解决办法
- Linux下C语言操作MySQL数据库
- Linux系统命令及MYSQL数据库操作命令的备忘录
- Linux系统中MySQL数据库操作命令
- Linux文件操作命令(系统自带vi编辑器)
- linux安装部署jdk,卸载系统自带jdk版本
- 我的Linux生涯之系统语言环境及中文输入法的操作
- Linux下载安装高版本python与系统自带低版本共存问题
- Linux系统操作(4)———安装mysql数据库
- linux系统原子操作
- 列出Linux系统版本信息的命令 lsb_release
- 查看linux系统版本命令
- linux环境下对mysql数据库的操作
- linux系统下的原子操作
- 如何查询linux的系统版本