From d8751224555bb40c137815bc0a725a2166a9ef81 Mon Sep 17 00:00:00 2001 From: wangmm0220 Date: Tue, 18 Jan 2022 14:56:28 +0800 Subject: [PATCH] [TD-12509] add doc for backquote and escape character --- documentation20/cn/11.administrator/docs.md | 28 +++++++++++++++++++++ documentation20/cn/12.taos-sql/docs.md | 2 +- documentation20/en/12.taos-sql/docs.md | 2 +- 3 files changed, 30 insertions(+), 2 deletions(-) diff --git a/documentation20/cn/11.administrator/docs.md b/documentation20/cn/11.administrator/docs.md index b24b432fd4..b1ed428ead 100644 --- a/documentation20/cn/11.administrator/docs.md +++ b/documentation20/cn/11.administrator/docs.md @@ -692,6 +692,12 @@ rmtaos 1. 合法字符:英文字符、数字和下划线 2. 允许英文字符或下划线开头,不允许以数字开头 3. 不区分大小写 +4. 转义后表(列)名规则: + 为了兼容支持更多形式的表(列)名,TDengine 引入新的转义符 "`"。可用让表名与关键词不冲突,同时不受限于上述表名称合法性约束检查。 + 转义后的表(列)名同样受到长度限制要求,且长度计算的时候不计算转义符。使用转义字符以后,不再对转义字符中的内容进行大小写统一。 + 例如:\`aBc\` 和 \`abc\` 是不同的表(列)名,但是 abc 和 aBc 是相同的表(列)名。 + 需要注意的是转义字符中的内容必须是可打印字符。 + 支持转义符的功能从 2.3.0.1 版本开始。 **密码合法字符集** @@ -761,6 +767,28 @@ rmtaos | CONNS | ID | NOTNULL | STABLE | WAL | | COPY | IF | NOW | STABLES | WHERE | +## 转义字符说明 +- 转义字符表(转义符的功能从 2.4.0.4 版本开始) + + | 字符序列 | **代表的字符** | + | :--------: | ------- | + | `\'` | 单引号' | + | `\"` | 双引号" | + | \n | 换行符 | + | \r | 回车符 | + | \t | tab符 | + | `\\` | 斜杠\ | + | `\%` | % 规则见下 | + | `\%` | _ 规则见下 | + +- 转义字符使用规则 + 1. 标识符里有转义字符(数据库名、表名、列名) + 1. 普通标识符: 直接提示错误的标识符,因为标识符规定必须是数字、字母和下划线,并且不能以数字开头。 + 2. 反引号``标识符: 保持原样,不转义 + 2. 数据里有转义字符 + 1. 遇到上面定义的转义字符会转义(%和_见下面说明),如果没有匹配的转义字符会忽略掉转义符\。 + 2. 对于%和_,因为在like里这两个字符是通配符,所以在模式匹配like里用`\%`%和`\_`表示字符里本身的%和_,如果在like模式匹配上下文之外使用`\%`或`\_`,则它们的计算结果为字符串`\%`和`\_`,而不是%和_。 + ## 诊断及其他 #### 网络连接诊断 diff --git a/documentation20/cn/12.taos-sql/docs.md b/documentation20/cn/12.taos-sql/docs.md index 71f873c6a1..b6bf522a9b 100755 --- a/documentation20/cn/12.taos-sql/docs.md +++ b/documentation20/cn/12.taos-sql/docs.md @@ -1854,7 +1854,7 @@ TDengine 中的表(列)名命名规则如下: select jtag->'key' from (select jtag from stable) where jtag->'key'>0 ``` ## 转义字符说明 -- 转义字符表 +- 转义字符表 (转义符的功能从 2.4.0.4 版本开始) | 字符序列 | **代表的字符** | | :--------: | ------- | diff --git a/documentation20/en/12.taos-sql/docs.md b/documentation20/en/12.taos-sql/docs.md index 17af500c7a..56c8a69564 100755 --- a/documentation20/en/12.taos-sql/docs.md +++ b/documentation20/en/12.taos-sql/docs.md @@ -1336,7 +1336,7 @@ Is not null supports all types of columns. Non-null expression is < > "" and onl select jtag->'key' from (select jtag from stable) where jtag->'key'>0 ``` ## Escape character description -- Special Character Escape Sequences +- Special Character Escape Sequences(since version 2.4.0.4) | Escape Sequence | **Character Represented by Sequence** | | :--------: | ------------------- | -- GitLab