Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
5b6bb91b
T
TDengine
项目概览
taosdata
/
TDengine
接近 2 年 前同步成功
通知
1192
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
5b6bb91b
编写于
4月 27, 2022
作者:
G
gccgdb1234
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: refine c++ connector page
上级
eb4d94e1
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
21 addition
and
36 deletion
+21
-36
docs-cn/14-reference/03-connector/cpp.mdx
docs-cn/14-reference/03-connector/cpp.mdx
+21
-36
未找到文件。
docs-cn/14-reference/03-connector/cpp.mdx
浏览文件 @
5b6bb91b
...
...
@@ -4,10 +4,7 @@ sidebar_label: C/C++
title: C/C++ Connector
---
import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
C/C++ 开发人员可以使用 TDengine 的客户端端驱动,即C/C++连接器 (以下都用 TDengine 客户端驱动表示),开发自己的应用来连接 TDengine 集群完成数据存储、查询以及其他功能。TDengine 客户端驱动的 API 类似于 MySQL 的 C API。应用程序使用时,需要包含 TDengine 头文件 _taos.h_,里面列出了提供的 API 的函数原型;应用程序还要链接到所在平台上对应的动态库。
C/C++ 开发人员可以使用 TDengine 的客户端驱动,即C/C++连接器 (以下都用 TDengine 客户端驱动表示),开发自己的应用来连接 TDengine 集群完成数据存储、查询以及其他功能。TDengine 客户端驱动的 API 类似于 MySQL 的 C API。应用程序使用时,需要包含 TDengine 头文件 _taos.h_,里面列出了提供的 API 的函数原型;应用程序还要链接到所在平台上对应的动态库。
```c
#include <taos.h>
...
...
@@ -18,7 +15,7 @@ TDengine 服务端或客户端安装后,taos.h 位于:
- Linux:`/usr/local/taos/include`
- Windows:`C:\TDengine\include`
C/C++ 连接器的动态库位于
TDengine 客户端驱动的动态库位于:
- Linux: /usr/local/taos/driver/libtaos.so
- Windows: C:\TDengine\taos.dll
...
...
@@ -26,12 +23,6 @@ C/C++ 连接器的动态库位于
请参考[支持的平台列表](/reference/connector#支持的平台)
:::note
- 如未特别说明,当 API 的返回值是整数时,_0_ 代表成功,其它是代表失败原因的错误码,当返回值是指针时, _NULL_ 表示失败。
- 所有的错误码以及对应的原因描述在 taoserror.h 文件中。
:::
## 支持的版本
TDengine 客户端驱动的版本号与 TDengine 服务端的版本号是一一对应的强对应关系,建议使用与 TDengine 服务端完全相同的客户端驱动。虽然低版本的客户端驱动在前三段版本号一致(即仅第四段版本号不同)的情况下也能够与高版本的服务端相兼容,但这并非推荐用法。强烈不建议使用高版本的客户端驱动访问低版本的服务端。
...
...
@@ -61,16 +52,19 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
在上面的示例代码中, `taos_connect` 建立到客户端程序所在主机的 6030 端口的连接,`taos_close`关闭当前连接,`taos_cleanup`清除客户端驱动所申请和使用的资源。
:::note
- 如未特别说明,当 API 的返回值是整数时,_0_ 代表成功,其它是代表失败原因的错误码,当返回值是指针时, _NULL_ 表示失败。
- 所有的错误码以及对应的原因描述在 taoserror.h 文件中。
:::
## 示例程序
本节展示了使用客户端驱动访问 TDengine 集群的常见访问方式的示例代码。
<Tabs>
<TabItem label="同步访问" value="sync">
### 同步查询示例
<details>
<summary>
demo.c
</summary>
<summary>
同步查询
</summary>
```c++
{{#include examples/c/demo.c}}
...
...
@@ -78,12 +72,10 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
</details>
</TabItem>
<TabItem label="异步访问" value="async">
### 异步查询示例
<details>
<summary>
asyncdemo.c
</summary>
<summary>
异步查询
</summary>
```c++
{{#include examples/c/asyncdemo.c}}
...
...
@@ -91,12 +83,10 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
</details>
</TabItem>
<TabItem label="参数绑定" value="stmt">
### 参数绑定示例
<details>
<summary>
prepare.c
</summary>
<summary>
参数绑定
</summary>
```c++
{{#include examples/c/prepare.c}}
...
...
@@ -104,12 +94,10 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
</details>
</TabItem>
<TabItem label="订阅" value="sub">
### 订阅和消费示例
<details>
<summary>
subscribe.c
</summary>
<summary>
订阅和消费
</summary>
```c++
{{#include examples/c/subscribe.c}}
...
...
@@ -117,12 +105,11 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
</details>
</TabItem>
<TabItem label="无模式写入" value="schemaless">
### 无模式写入示例
<details>
<summary>
schemaless.c
</summary>
<summary>
无模式写入
</summary>
```c++
{{#include examples/c/schemaless.c}}
...
...
@@ -130,10 +117,6 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
</details>
</TabItem>
</Tabs>
:::info
更多示例代码及下载请见 [github](https://github.com/taosdata/TDengine/tree/develop/examples/c)
也可以在安装目录下的 examples/c 路径下找到。 该目录下有 makefile,在 Linux 环境下,直接执行 make 就可以编译得到执行文件。
...
...
@@ -143,6 +126,8 @@ TDengine 客户端驱动的安装请参考 [安装指南](/operation/pkg-install
## API 参考
以下分别介绍 TDengine 客户端驱动的基础 API、同步 API、异步 API、订阅 API 和无模式写入 API。
### 基础 API
基础 API 用于完成创建数据库连接等工作,为其它 API 的执行提供运行时环境。
...
...
@@ -375,7 +360,7 @@ TDengine 的异步 API 均采用非阻塞调用模式。应用程序可以用多
(2.1.3.0 版本新增)
用于在其他 STMT API 返回错误(返回错误码或空指针)时获取错误信息。
###
Schemaless 方式写入接口
###
无模式写入 API
除了使用 SQL 方式或者使用参数绑定 API 写入数据外,还可以使用 Schemaless 的方式完成写入。Schemaless 可以免于预先创建超级表/数据子表的数据结构,而是可以直接写入数据,TDengine 系统会根据写入的数据内容自动创建和维护所需要的表结构。Schemaless 的使用方式详见 [Schemaless 写入](/reference/schemaless/) 章节,这里介绍与之配套使用的 C/C++ API。
...
...
@@ -450,7 +435,7 @@ TDengine 的异步 API 均采用非阻塞调用模式。应用程序可以用多
}
```
###
数据订阅接口
###
订阅和消费 API
订阅 API 目前支持订阅一张或多张表,并通过定期轮询的方式不断获取写入表中的最新数据。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录