MySQL入门之简单数据查询
来源:互联网 发布:ubuntu配置tomcat环境 编辑:程序博客网 时间:2024/05/17 20:28
- mysql_init初始化数据库链接–得到一个链接
- mysql_real_connect连接数据库服务器
- 执行mysql_query查询–查询语句是一个字符串
- 对每一行分别进行检索mysql_store_result–结果存储在链接里面,属于一次性查询
- 从结果集,获取表头信息–mysql_fetch_fields–表头信息存储在MYSQL_FIELD类型的指针指向的内存空间
- 解析表头–mysql_field_count获取列数,for循环逐列解析
- mysql_fetch_row从结果集中一行一行的获取数据,在针对每一行解析每一列
- 释放内存空间
关闭链接
具体代码
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <dlfcn.h>#include <mysql/mysql.h>int main(){ int ret = 0; int i = 0; MYSQL mysql; MYSQL *con = NULL; unsigned int fieldnum; printf("hello....\n"); con = mysql_init(&mysql); if (con == NULL) { ret = mysql_errno(&mysql); printf("func mysql_init() err :%d\n", ret); return ret; } con = mysql_real_connect(&mysql, "localhost", "root", "123456", "mydb2", 0, NULL, 0 ); if (con == NULL) { ret = mysql_errno(&mysql); printf("func mysql_real_connect() err :%d\n", ret); return ret; } else { printf("func mysql_real_connect() ok\n"); } //执行sql查询 mysql_query(&mysql, "set names utf8");//解决中文乱码 char *sql = "select *from employee"; ret = mysql_query(&mysql, sql); if (ret != 0) { ret = mysql_errno(&mysql); printf("func mysql_query() err :%d\n", ret); return ret; } /* //获取结果集 一次性获取 MYSQL_RES * sqlres =mysql_store_result( &mysql); if (sqlres == NULL) { ret = mysql_errno(&mysql); printf("func mysql_store_result() err :%d\n", ret); return ret; } */ //对每一行分别进行检索 MYSQL_RES * sqlres =mysql_use_result(&mysql); if (sqlres == NULL) { ret = mysql_errno(&mysql); printf("func mysql_store_result() err :%d\n", ret); return ret; } //从结果集,获取表头信息 MYSQL_FIELD *fields = mysql_fetch_fields(sqlres); fieldnum = mysql_field_count(&mysql); for (i=0; i<fieldnum; i++) { printf("%s\t", fields[i].name); } printf("\n"); //从结果集, 按照行获取信息信息 MYSQL_ROW row = NULL; //(char **) //从结果集中一行一行的获取数据 while ( row = mysql_fetch_row(sqlres)) { fieldnum = mysql_field_count(&mysql); //优化,我的行有多少列。。。。查找这样的api函数 for (i=0; i<fieldnum; i++) //经过测试 发现 不是以0结尾的指针数组。。 { printf("%s\t", row[i]); } printf("\n"); } mysql_free_result(sqlres); mysql_close(&mysql); return ret;}
0 0
- MySQL入门之简单数据查询
- 《MySQL入门很简单》学习笔记(10)之第10章查询数据(关键词:数据库/MySQL/查询数据)
- MySQL 入门 之 数据的插入、查询、更新与删除
- 数据查询之简单查询
- MySQL基础入门之查询
- MySQL入门很简单-学习笔记 - 第10章 查询数据
- hibernate入门--实现简单的数据查询
- 一步一步学MySQL----8 简单数据查询
- 【Mysql】select,数据简单查询整理总结
- oracle入门之第一章【简单查询语句】
- MySQL基础入门之查询续集
- Mysql入门(六)之联合查询
- Hibernate入门之基本数据查询
- oracle数据库使用之数据查询入门
- Mysql查询数据第一讲之查询数据基本语法
- mysql之简单的多表查询
- mysql之简单的多标查询
- 数据库之简单的数据查询
- java并发结构
- 在Dubbo中开发REST风格的远程调用(RESTful Remoting)
- HBASE教程
- 微信小程序精品demo:有调商城(礼物挑选神器)(适用1304)
- 设计模式之22 - 模板方法Template method
- MySQL入门之简单数据查询
- TFS 2015 敏捷开发实践 – 看板的使用
- Bluetooth---如何使用Android蓝牙开发
- 347. Top K Frequent Elements**
- 设计模式之23 - 访问者模式Visitor
- linux学习之混合编程
- 安卓漫漫路之碎片Fragment不同包下的区别.
- Swift3.0 URLSession学习笔记
- django初步学习