利用MYSQL提供的API操作MYSQL数据库(C语言)
2016-11-05 17:31
495 查看
包含头文件<mysql.h> 初始化: MYSQL mysql, *sock; //mysql用于保存连接信息,*sock用户判断是否连上MYSQL服务器 mysql_init(&mysql); 连接MYSQL服务器: sock = mysql_real_connect(&mysql, "localhost", "root", "xuweitang", "db_test", 0, NULL, 0); 执行插入、更新等操作: int res; res = mysql_query(&mysql, "insert into t_student set field=value, ..."); 执行查询: res = mysql_query(&mysql, "select * from t_student"); MYSQL_RES *sqlres; MYSQL_ROW sqlrow; sqlres = mysql_store_result(&mysql); //MYSQL_RES *mysql_store_result(MYSQL *connection); 在成功调用mysql_query之后使用此函数,将立即保存在客户端中返回的所有数据,并将指向此结果集的指针返回。如果失败则返回NULL。 unsigned int field_count, all_field; all_field = mysql_field_count(&mysql); while(sqlrow = mysql_fetch_row(sqlres)){ //MYSQL_ROW mysql_fetch_row(MYSQL_RES *result); 此函数从上面得到的结果集中提取一行,并把它放在一个行结构中。当数据用完或者出错时返回NULL。 for(field_count = 0; field_count < all_field; field_count++){ cout<<sqlrow[field_count]<<"\t"; } count<<endl; } 释放数据集: mysql_free_result(sqlres); 关闭数据库连接: mysql_close(&mysql); 编译的时候 g++ sql.cpp -I/usr/include/mysql -L/usr/lib64/mysql -lmysqlclient -o sql
完整代码
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <mysql.h> using namespace std; int main(int argc, char **argv){ MYSQL mysql, *sock; MYSQL_RES *sqlres; MYSQL_ROW sqlrow; int res; unsigned int field_count,all_field; mysql_init(&mysql); sock = mysql_real_connect(&mysql, "localhost", "root", "xuweitang", "db_test", 0, NULL, 0); if(sock == NULL){ perror("mysql_real_connect error!\n"); mysql_close(&mysql); exit(1); } res = mysql_query(&mysql, "select * from t_student"); if(res != 0){ perror("mysql_query error!\n"); mysql_close(&mysql); exit(2); } sqlres = mysql_store_result(&mysql); if(sqlres == NULL){ perror("mysql_store_result error\n"); mysql_close(&mysql); exit(3); } all_field = mysql_field_count(&mysql); while(sqlrow = mysql_fetch_row(sqlres)){ for(field_count = 0;field_count < all_field; field_count++){ //printf("%s\t",sqlrow[field_count]); cout<<sqlrow[field_count]<<"\t"; } //printf("\n"); cout<<endl; } mysql_free_result(sqlres); mysql_close(&mysql); return 0; }
相关文章推荐
- 利用mysql提供的c语言接口操作数据库
- 利用mysql提供的c语言接口操作数据库
- 【MySql APIs】很完整的关于怎么用各种方法连接Mysql数据库,和使用API来操作Mysql数据库的资料
- Linux-(C)利用Mysql相关API实现类似mysql的操作
- MYSQL数据库 - 学习笔记2 - C语言操作MYSQL
- 转]在Linux下编译安装MySQL并通过C语言操作MySQL数据库
- 在Linux下编译安装MySQL并通过C语言操作MySQL数据库
- 利用mysql的C API来操作mysql数据库
- CentOS中利用C语言操作MySQL,插入日期和时间
- C#利用Mysql.Data.dll操作Mysql数据库
- postgresql利用mysql_fdw操作mysql数据库
- ubuntu环境中操作MySQL,使用C语言API调用MySQL
- C语言调用mysql数据库API实现简单的mysql客户端的功能
- 通过MySQL C API界面(mysql自己提供的API方式访问mysql数据库)
- mysql提供给c语言的api 和c语言连接mysql例子程序
- Linux下用C语言API连接MySQL数据库
- 在C#中使用MySQLDriverCS操作MySQL数据库
- 利用mysqlbinlog工具恢复MySQL数据库
- C语言连接mysql数据库,读取mysql内容
- 如何直接使用ODBC提供的API来操作数据库呢?