MySQL C API的介绍

1. MySQL C API是什么?

MYSQL是最流行的SQL数据库管理系统,MySQL C API是一个基于C语言的API,用C语言编写的客户端应用程序可以使用它与MySQL服务器进行通信。

2. MySQL C API的发布

MYSQL C API代码随MySQL一起发布,并在libmysqlclient库中实现。

3. MySQL C API的库文件

编译客户端程序时引用C API头文件,在链接客户端程序时链接C API库文件。根据应用程序与服务器通信的方式,有两个版本的库:

  • libmysqlclient: 库的客户端版本,用于作为独立服务器进程的客户端的应用程序,通过网络连接进行通信。
  • libmysqld:库的嵌入式服务器版本,用于在应用程序本身中包含嵌入式MySQL服务器的应用程序,应用程序与其自己私有服务器实例进行通信。

两个库都有相同的接口。就C API调用而言,应用程序与独立服务器通信的方式与它与嵌入式服务器通信的方式相同。客户端可以编译为与独立服务器通信,或与嵌入式服务器通信,这取决于它在编译时是链接到libmysqlclient还是libmysqld。

4. 如何获取C API头文件和库文件?

有两种方法可以获得编译C API客户端程序所需的C API头文件和库文件:

  • 安装一个MySQL服务器发行版。服务器发行版包括libmysqlclientlibmysqld
  • 安装连接器/C分配。Connector/C发行版只包括libmysqlclient,不包括libmysqld

使用时,您可以安装一个包含预编译的C API文件的二进制发行版,或者您可以使用一个源代码发行版编译出自己C API文件。

5. C API的链接

客户端应用程序链接C API时,要使用的库文件的名称取决于为发行版的库类型和平台:

  • 在Unix(和类Unix)系统上,静态库是libmysqlclient.a .动态库是libmysqlclient.so。在大多数Unix系统上和OS X上的libmysqlclient.dylib。对于包含嵌入式服务器库的发行版,相应的库名是libmysqld而不是libmysqlclient
  • 在Windows上,静态库是mysqlclient.lib,动态库是libmysql.dll。Windows发行版还包括libmysql.lib,这是一个静态导入库。对于包含嵌入式服务器库的发行版,相应的库名是mysqlserver.lib、libmysqld.liblibmysqld.lib

6.参考文献

MySQL 5.0 Reference Manual.pdf

获取链接如下

链接:https://pan.baidu.com/s/1LNf_sHyucDabvPdh370dtw?pwd=z7vj 
提取码:z7vj 
--来自百度网盘超级会员V6的分享

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/50302.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nacos 2.x 新增 grpc 端口,Nginx 需要配置TCP端口转发的注意事项

Nacos 2.x 开始,最大的变化就是端口。在默认主端口 8848 之外又新增了三个端口,新增端口是在配置的主端口 server.port 的基础上,进行一定偏移量自动生成。 8848(主端口,默认8848)web页面端口及相关http接口…

导航网站WP主题/WP黑格导航主题BlackCandy-简约酷黑色高逼格+焕然一新的UI设计

源码简介: 导航网站WP主题-WP黑格导航主题BlackCandy,它有着简约酷黑色高逼格,而且有焕然一新的UI设计。它是一个简约漂亮的 WordPress 自媒体主题。黑格网址导航主题,自适应电脑端和手机端。 BlackCandy-V2.0这次全新升级了&am…

vite构建vue3项目hmr生效问题踩坑记录

vite构建vue3项目hmr生效问题踩坑记录 hmr的好处 以下是以表格形式呈现的前端开发中HMR(热模块替换)带来的好处: 好处描述提升开发效率允许开发者在不刷新整个页面的情况下实时更新修改的代码,减少等待时间保持应用状态在模块替…

Oauth2协议的四种模式

B站视频 概念 Oauth2.0(Open Authorization) 一个关于授权的开放网络标准 允许用户授权第三方应用访问用户存储在其他服务提供者上的信息 不需要将用户名和密码提供给第三方应用 Oauth2中的各个角色 授权码模式 第一步 获取授权码 以上流程中的授…

Unity3D结合AI教育大模型 开发AI教师 AI外教 AI英语教师案例

自2022年底ChatGPT引爆全球之后,大模型技术便迎来了一段崭新的快速发展期,由其在GPT4.0发布后,AI与教育领域结合产品研发、已成为教育AI科技竞争的新高地、未来产业的新赛道、经济发展的新引擎和新产品的诞生地。 据不完全统计,目…

Robot Operating System——Parameter设置的预处理、校验和成功回调

大纲 预处理校验成功回调完整代码测试总结 在《Robot Operating System——对Parameter设置进行校验》一文中,我们通过Node的add_on_set_parameters_callback方法,设置了一个回调函数,用于校验传递过来的Parameter参数。但是这个方法并不能对…

普通html文本如何使用Redux

在 HTML 文件中使用 Redux 通常涉及将 Redux 结合使用到一个前端框架(比如 React、Angular、Vue.js 等)中,而不是直接在 HTML 文件中使用。Redux 通常用于管理应用程序的状态,通过将状态集中存储在一个全局的状态树中,…

go程序在windows服务中优雅开启和关闭

本篇主要是讲述一个go程序,如何在windows服务中优雅开启和关闭,废话不多说,开搞!!!   使用方式:go程序 net服务启动 Ⅰ 开篇不利 Windows go进程编译后,为一个.exe文件,直接执行即…

[Vulnhub] Raven WordPress+SUDO-Python权限提升+MSQP自动化Mysql权限提升

信息收集 IP AddressOpening Ports192.168.101.159TCP: $ nmap -p- 192.168.101.159 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 6.7p1 Debian 5deb8u4 (protocol 2.0) | ssh-hostkey: | 1024 26:81:c1:f3:5e:01:ef:93:4…

【Java版数据结构】初识泛型

看到这句话的时候证明:此刻你我都在努力 加油陌生人 br />个人主页:Gu Gu Study专栏:Java版数据结构 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹 喜欢的话可以点个赞谢谢了。 作者&#xff1…

指针数组模拟二维数组

有任何不懂的问题可以评论区留言&#xff0c;能力范围内都会一一回答 指针数组&#xff0c;是数组&#xff0c;但是它的元素都是指针。 #define _CRT_SECURE_NO_WARNING #include <stdio.h> int main(void) {int a 3;int b 4;int c 5;int* arr[3] { &a,&b,…

STM32的外部中断详解

一、什么是中断&#xff1f; 想象一下你正在家里做饭&#xff0c;突然门铃响了&#xff0c;你听到门铃声后&#xff0c;会暂时放下手中的事情&#xff08;比如炒菜&#xff09;&#xff0c;去开门看看是谁。在这个例子中&#xff0c;门铃声就是一个“中断”&#xff0c;它打断…

【C语言】 二叉树创建(结构体,先序遍历,中序遍历,后续遍历)

二叉树的创建&#xff1a;首先先定义一个结构体&#xff0c;里面包含数据&#xff08;data&#xff09;&#xff0c;指向左子树的指针&#xff08;L&#xff09;&#xff0c;指向右子树的指针&#xff08;R&#xff09;三个部分 在创建树的函数中&#xff0c;首先先输入…

HCIP作业3——MGRE综合实验

一、实验及拓扑 二、实验步骤 1、配置IP R1 [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip add 192.168.1.254 24 [R1-GigabitEthernet0/0/0]int s4/0/0 [R1-Serial4/0/0]ip add 15.1.1.1 24 [R1-Serial4/0/0]quitR2 [R2]int g0/0/0 [R2-GigabitEthernet0/0/0]ip add 192.16…

Python xml操作

XPath XPath 是用于在 XML 或 HTML 文档中定位节点的语言。XPath 语法允许你使用路径表达式来选择节点。XPath 提供了多种功能&#xff0c;包括节点选择、过滤、计算等。 XPath表达式语法 语法说明示例/选择根节点。/root # 选择根节点 root//选择从当前节点开始的所有子节点&…

qt国际化

1.pro文件里添加那个…ts. 2.开始-qt-qtxxxfor mingw.然后切换到pro所在的目录。 3.输入lupdate testguojihua.pro,会发现生成一个.ts的文件 4.开始–qt–Linguist,然后打开那个文件。 5.选择文件-发布&#xff0c;就能找到.qm文件了 6.使用这个qm文件

SpringBoot 使用easypoi.excel实现导入解析数据,并结合数据字典实现对数据的校验

在日常开发工作中避免不了的功能需求&#xff1a;导入Excel文件&#xff0c;然而导入文件流操作、对数据的校验有是件麻烦事&#xff0c;自从接触了easypoi后&#xff0c;觉得封装的很好&#xff0c;很简洁。 使用的主要依赖如下&#xff1a; <dependency><groupId&…

Spring -- 使用XML开发MyBatis

T04BF &#x1f44b;专栏: 算法|JAVA|MySQL|C语言 &#x1faf5; 今天你敲代码了吗 文章目录 MyBatis XML配置文件开发配置连接字符串和MyBatis写Mapper层代码添加mapper接口添加UserInfoXmLMapper.xml 操作数据库INSERTDELETE & UPDATE MyBatis XML配置文件开发 实际上,除…

谷粒商城实战笔记-64-商品服务-API-品牌管理-OSS前后联调测试上传

文章目录 1&#xff0c;拷贝文件到前端工程2&#xff0c;局部修改3&#xff0c;在品牌编辑界面使用上传组件4&#xff0c;OSS配置允许跨域5&#xff0c;测试multiUpload.vue完整代码singleUpload.vue完整代码policy.js代码 在Web应用开发中&#xff0c;文件上传是一项非常常见的…

MongoDB - 聚合阶段 $group 的使用

文章目录 1. 构造测试数据1. 示例 12. 示例23. 示例34. 示例45. 示例5 2. 构造测试数据1. 示例12. 示例23. 示例3 在 MongoDB 中&#xff0c;$group 是聚合管道中的一个阶段&#xff0c;用于根据指定的条件对文档进行分组。 {$group: {_id: <expression>, // 分组的依据…