diff --git a/docs/zh/14-reference/05-connector/26-rust.mdx b/docs/zh/14-reference/05-connector/26-rust.mdx
index 863da4cb47..fbeb2f250e 100644
--- a/docs/zh/14-reference/05-connector/26-rust.mdx
+++ b/docs/zh/14-reference/05-connector/26-rust.mdx
@@ -4,27 +4,21 @@ sidebar_label: Rust
title: TDengine Rust Connector
---
-import Tabs from '@theme/Tabs';
-import TabItem from '@theme/TabItem';
+import Tabs from "@theme/Tabs";
+import TabItem from "@theme/TabItem";
-import Preparation from "./_preparation.mdx"
+import Preparation from "./_preparation.mdx";
import RequestId from "./_request_id.mdx";
[](https://crates.io/crates/taos)  [](https://docs.rs/taos)
-`taos` 是 TDengine 的官方 Rust 语言连接器。Rust 开发人员可以通过它开发存取 TDengine 数据库的应用软件。
+`taos` 是 TDengine 的官方 Rust 语言连接器,Rust 开发人员可以通过它开发存取 TDengine 数据库的应用软件。
该 Rust 连接器的源码托管在 [GitHub](https://github.com/taosdata/taos-connector-rust)。
-## 连接方式
+## Rust 兼容性
-`taos` 提供两种建立连接的方式。一般我们推荐使用 **WebSocket 连接**。
-- **原生连接**,它通过 TDengine 客户端驱动程序(taosc)连接 TDengine 运行实例。
-- **WebSocket 连接**,它通过 taosAdapter 的 WebSocket 接口连接 TDengine 运行实例。
-
-你可以通过不同的 “特性(即 Cargo 关键字 `features`)” 来指定使用哪种连接器(默认同时支持)。
-
-连接方式的详细介绍请参考:[连接方式](../../../develop/connect/#连接方式)
+支持 1.70 及以上版本。
## 支持的平台
@@ -33,20 +27,19 @@ import RequestId from "./_request_id.mdx";
## 版本历史
-| Rust 连接器版本 | 主要变化 | TDengine 版本 |
-| :---------------- | :-------------------------------------------------- | :-------------- |
-| v0.12.3 | 1. 优化了 WebSocket 查询和插入性能
2. 支持了 VARBINARY 和 GEOMETRY 类型 | 3.3.0.0 及更高版本 |
-| v0.12.0 | WS 支持压缩。 | 3.2.3.0 及更高版本 |
-| v0.11.0 | TMQ 功能优化。 | 3.2.0.0 |
-| v0.10.0 | WS endpoint 变更。 | 3.1.0.0 |
-| v0.9.2 | STMT:ws 下获取 tag_fields、col_fields。 | 3.0.7.0 |
-| v0.8.12 | 消息订阅:获取消费进度及按照指定进度开始消费。 | 3.0.5.0 |
-| v0.8.0 | 支持无模式写入。 | 3.0.4.0 |
-| v0.7.6 | 支持在请求中使用 req_id。 | 3.0.3.0 |
-| v0.6.0 | 基础功能。 | 3.0.0.0 |
+| Rust 连接器版本 | 主要变化 | TDengine 版本 |
+| :-------------- | :------------------------------------------------------------------------ | :----------------- |
+| v0.12.3 | 1. 优化 WebSocket 查询和插入性能
2. 支持 VARBINARY 和 GEOMETRY 类型 | 3.3.0.0 及更高版本 |
+| v0.12.0 | 支持 WebSocket 压缩 | 3.2.3.0 及更高版本 |
+| v0.11.0 | 消息订阅功能优化 | 3.2.0.0 |
+| v0.10.0 | WebSocket endpoint 变更 | 3.1.0.0 |
+| v0.9.2 | STMT:通过 WebSocket 获取 `tag_fields` 和 `col_fields` 信息 | 3.0.7.0 |
+| v0.8.12 | 消息订阅:支持获取消费进度及按照指定进度开始消费 | 3.0.5.0 |
+| v0.8.0 | 支持无模式写入 | 3.0.4.0 |
+| v0.7.6 | 支持在请求中使用 `req_id` | 3.0.3.0 |
+| v0.6.0 | 基础功能 | 3.0.0.0 |
-
-## 处理错误
+## 异常和错误码
在报错后,可以获取到错误的具体信息:
@@ -61,7 +54,8 @@ match conn.exec(sql) {
}
}
```
-错误信息的错误码可以参考:[错误码](../../../reference/error-code)
+
+错误信息的错误码可以参考:[错误码](../../../reference/error-code)
## 数据类型映射
@@ -80,14 +74,14 @@ TDengine 目前支持时间戳、数字、字符、布尔类型,与 Rust 对
| BINARY | Vec\ |
| NCHAR | String |
| JSON | serde_json::Value |
-| VARBINARY | Bytes |
-| GEOMETRY | Bytes |
+| VARBINARY | Bytes |
+| GEOMETRY | Bytes |
**注意**:JSON 类型仅在 tag 中支持。
## 示例程序汇总
-示例程序源码请参考:[rust example](https://github.com/taosdata/TDengine/tree/main/docs/examples/rust)
+请参考:[rust example](https://github.com/taosdata/TDengine/tree/main/docs/examples/rust)
## 常见问题
@@ -96,9 +90,10 @@ TDengine 目前支持时间戳、数字、字符、布尔类型,与 Rust 对
## API 参考
Rust 连接器的接口分为同步接口和异步接口,一般同步接口是由异步接口实现,方法签名除 async 关键字外基本相同。对于同步接口和异步接口功能一样的接口,本文档只提供同步接口的说明。
-对于 WebSocket 连接和原生连接两种方式,除了建立连接的 DSN 不同,其余接口调用没有区别。
+对于 WebSocket 连接和原生连接两种方式,除了建立连接的 DSN 不同,其余接口调用没有区别。
+
+### 连接功能
-### 连接功能
#### DSN
TaosBuilder 通过 DSN 连接描述字符串创建一个连接构造器。
@@ -126,29 +121,35 @@ DSN 描述字符串基本结构如下:
一个完整的 DSN 描述字符串示例如下:`taos+ws://localhost:6041/test`, 表示使用 WebSocket(`ws`)方式通过 `6041` 端口连接服务器 `localhost`,并指定默认数据库为 `test`。
#### TaosBuilder
+
TaosBuilder 结构体主要提供了根据 DSN 构建 Taos 对象的方法,还提供了检查连接,以及获取客户端版本号等功能。
- `fn available_params() -> &'static [&'static str]`
+
- **接口说明**:获取 DSN 中可用的参数列表。
- **返回值**:返回静态字符串切片的引用,包含可用的参数名称。
- `fn from_dsn(dsn: D) -> RawResult`
+
- **接口说明**:使用 DSN 字符串创建连接,不检查连接。
- **参数说明**:
- `dsn`:DSN 字符串或可转换为 DSN 的类型。
- **返回值**:成功时返回自身类型的 `RawResult`,失败时返回错误。
- `fn client_version() -> &'static str`
+
- **接口说明**:获取客户端版本。
- **返回值**:返回客户端版本的静态字符串。
- `fn ping(&self, _: &mut Self::Target) -> RawResult<()>`
+
- **接口说明**:检查连接是否仍然存活。
- **参数说明**:
- `_`:目标连接的可变引用。
- **返回值**:成功时返回空的 `RawResult`,失败时返回错误。
- `fn ready(&self) -> bool`
+
- **接口说明**:检查是否准备好连接。
- **返回值**:大多数情况下返回 `true`,表示地址准备好连接。
@@ -157,26 +158,32 @@ TaosBuilder 结构体主要提供了根据 DSN 构建 Taos 对象的方法,还
- **返回值**:成功时返回目标连接类型的 `RawResult`,失败时返回错误。
### 执行 SQL
+
执行 SQL 主要使用 Taos 结构体,获取结果集以及元数据需要使用下节介绍的 ResultSet 结构体 和列信息 Field 结构体。
#### Taos
+
Taos 结构体提供了多个数据库操作的 API,包括:执行 SQL,无模式写入,以及一些常用数据库查询的封装(如创建数据库,获取)
- `pub fn is_native(&self) -> bool`
+
- **接口说明**:判断连接是否使用本地协议。
- **返回值**:如果使用本地协议,则返回 `true`,否则返回 `false`。
- `pub fn is_ws(&self) -> bool`
- - **接口说明**:判断连接是否使用websocket协议。
- - **返回值**:如果使用websocket协议,则返回 `true`,否则返回 `false`。
+
+ - **接口说明**:判断连接是否使用 WebSocket 协议。
+ - **返回值**:如果使用 WebSocket 协议,则返回 `true`,否则返回 `false`。
- `fn query>(&self, sql: T) -> RawResult`
+
- **接口说明**:执行 SQL 查询。
- **参数说明**:
- `sql`:要执行的 SQL 语句。
- **返回值**:成功时返回结果集 `ResultSet` 的 `RawResult`,失败时返回错误。
- `fn query_with_req_id>(&self, sql: T, req_id: u64) -> RawResult`
+
- **接口说明**:带请求 ID 执行 SQL 查询。
- **参数说明**:
- `sql`:要执行的 SQL 语句。
@@ -184,49 +191,58 @@ Taos 结构体提供了多个数据库操作的 API,包括:执行 SQL,无
- **返回值**:成功时返回结果集 `ResultSet` 的 `RawResult`,失败时返回错误。
- `fn exec>(&self, sql: T) -> RawResult`
+
- **接口说明**:执行 SQL 语句。
- **参数说明**:
- `sql`:要执行的 SQL 语句。
- **返回值**:成功时返回受影响的行数,失败时返回错误。
- `fn exec_many, I: IntoIterator- >(&self, input: I) -> RawResult`
+
- **接口说明**:批量执行 SQL 语句。
- **参数说明**:
- `input`:要执行的 SQL 语句集合。
- **返回值**:成功时返回总共受影响的行数,失败时返回错误。
- `fn query_one, O: DeserializeOwned>(&self, sql: T) -> RawResult