C语言链接mysql常用函数

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

1、MYSQL *mysql_init(MYSQL *mysql)


   为mysql_real_connect()分配或初始化一个MYSQL对象。若mysql为NULL,函数为其分配,初始化并返回一个新对象;否则对象被初始化并返回该对象的地址。
   返回值:一个被初始化了的MYSQL* handle,若内存不足返回NULL。

 

 

2、int mysql_options(MYSQL *mysql, enum mysql_option option, const void *arg)


   为连接设置一些连接项。必须在mysql_init()之后,mysql_real_connect()之前调用该函数。

 

 

3、MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd, const char *db, unsigned int port, const char *unix_socket, unsigned long client_flag)


   试图与运行在host上的mysql数据库建立一个连接。在调用该函数之前,必须先调用mysql_init()初始化MYSQL结构体。
   返回值:连接成功返回A MYSQL* connection handle,连接失败返回NULL。

 

 

4、int mysql_query(MYSQL *mysql, const char *stmt_str)


   执行由stmt_str指向的SQL语句。不能执行包含二进制的数据(字符“\0”是二进制数据),但mysql_real_query()可以;通常使 用单独的SQL语句(不带“;”的),也可调用mysql_real_connect() 或mysql_set_server_option()指定以分号分隔的多个SQL语句
   返回值:SQL语句执行成功返回0,出错返回非0。

 

 

5、int mysql_real_query(MYSQL *mysql, const char *stmt_str, unsigned long length)


   length是字符串stmt_str的字节数。除能执行二进制的SQL语句外,其他与mysql_query()相同。

 

 

6、MYSQL_RES *mysql_use_result(MYSQL *mysql)


   在调用mysql_query()或mysql_real_query()之后,必须调用mysql_store_result()或 mysql_use_result()才能产生一个结果集,在完成对结果集的处理之后,必须调用mysql_free_result()释放结果集
   初始化一个结果集检索,但并不像mysql_store_result()那样把结果集读到client,而是通过调用mysql_fetch_row()进行逐行检索,直到返回一个NULL,直接从server读取,节省时间和空间
   返回值:成功返回一个MYSQL_RES结构体,出错返回NULL

 

 

7、MYSQL_RES *mysql_store_result(MYSQL *mysql)


   同mysql_use_result()

 

 

8、int mysql_next_result(MYSQL *mysql)


   该函数用来在由多个SQL语句构成的单独语句字符串时执行。在每次调用该函数之前,一定要使用  mysql_free_result()释放当前的语句的结果集。

 

 

9、MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)


   检索结果集中的下一行,使用完mysql_store_result()后,无要检索的行返回NULL。使用完mysql_use_result()后,无要检索的行或出错返回NULL。
   每行的值的个数可由mysql_num_fields(result)获知,如果row保存mysql_fetch_row()的返回值,则指向值的指针是row[0] to row[mysql_num_fields(result)-1],空值由NULL指向
   返回值:成功返回下一行的MYSQL_ROW structure,出错或没有要检索的行返回NULL

 

 

10、void mysql_close(MYSQL *mysql)


   关闭先前打开的连接,同时也释放由mysql指向的连接handle,若handle是由mysql_init() or mysql_connect()分配的。










本文转自 ye小灰灰  51CTO博客,原文链接:http://blog.51cto.com/10704527/1788432,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
15天前
|
程序员 C语言
C语言库函数 — 内存函数(含模拟实现内存函数)
C语言库函数 — 内存函数(含模拟实现内存函数)
24 0
|
26天前
|
编译器 C语言 C++
【C语言】memset()函数(内存块初始化函数)
【C语言】memset()函数(内存块初始化函数)
26 0
|
26天前
|
编译器 C语言 C++
【C语言】memcpy()函数(内存块拷贝函数)
【C语言】memcpy()函数(内存块拷贝函数)
42 0
|
27天前
|
C语言 C++
【C语言】rand()函数(如何生成指定范围随机数)
【C语言】rand()函数(如何生成指定范围随机数)
16 0
|
2天前
|
存储 C语言
C语言函数的返回值
C语言函数的返回值
7 0
|
2天前
|
C语言 Windows
C语言中的fopen与fclose函数详解
C语言中的fopen与fclose函数详解
10 1
|
2天前
|
C语言
深入理解C语言中的printf函数及数据输出
深入理解C语言中的printf函数及数据输出
11 0
|
10天前
|
SQL 关系型数据库 MySQL
DQL语言之常见函数(mysql)
DQL语言之常见函数(mysql)
|
15天前
|
程序员 C语言 开发者
C语言库函数 — 字符串函数(含模拟实现字符串函数)
C语言库函数 — 字符串函数(含模拟实现字符串函数)
35 0
|
16天前
|
存储 自然语言处理 编译器
编译和链接---C语言
编译和链接---C语言