提交 ace4d2ed 编写于 作者: wmmhello's avatar wmmhello

[TD-12252]<feature>(connector,query,insert,other,tools,taosAdapter):deal with escape character

上级 e1935793
...@@ -1853,3 +1853,24 @@ TDengine 中的表(列)名命名规则如下: ...@@ -1853,3 +1853,24 @@ TDengine 中的表(列)名命名规则如下:
```mysql ```mysql
select jtag->'key' from (select jtag from stable) where jtag->'key'>0 select jtag->'key' from (select jtag from stable) where jtag->'key'>0
``` ```
## 转义字符说明
- 转义字符表
| 字符序列 | **代表的字符** |
| :--------: | ------- |
| \' | 单引号' |
| \" | 双引号" |
| \n | 换行符 |
| \r | 回车符 |
| \t | tab符 |
| \\ | 斜杠\ |
| \% | % 规则见下 |
| \_ | _ 规则见下 |
- 转义字符使用规则
1. 标识符里有转义字符(数据库名、表名、列名)
1. 普通标识符: 直接提示错误的标识符,因为标识符规定必须是数字、字母和下划线,并且不能以数字开头。
2. 反引号``标识符: 保持原样,不转义
2. 数据里有转义字符
1. 遇到上面定义的转义字符会转义(%和_见下面说明),如果没有匹配的转义字符会忽略掉转义符\。
2. 对于%和_,因为在like里这两个字符是通配符,所以在模式匹配like里用\%和\_表示字符里本身的%和_,如果在like模式匹配上下文之外使用\%或\_,则它们的计算结果为字符串\%和\_,而不是%和_。
\ No newline at end of file
...@@ -1335,3 +1335,24 @@ Is not null supports all types of columns. Non-null expression is < > "" and onl ...@@ -1335,3 +1335,24 @@ 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 select jtag->'key' from (select jtag from stable) where jtag->'key'>0
``` ```
## Escape character description
- Special Character Escape Sequences
| Escape Sequence | **Character Represented by Sequence** |
| :--------: | ------------------- |
| \\' | A single quote (') character |
| \\" | A double quote (") character |
| \n | A newline (linefeed) character |
| \r | A carriage return character |
| \t | A tab character |
| \\\ | A backslash (\) character |
| \\% | A % character; see note following the table |
| \\_ | A _ character; see note following the table |
- Escape character usage rules
- The escape characters that in a identifier (database name, table name, column name)
1. Normal identifier: The wrong identifier is prompted directly, because the identifier must be numbers, letters and underscores, and cannot start with a number.
2. Backquote`` identifier: Keep it as it is.
- The escape characters that in a data
3. The escape character defined above will be escaped (% and _ see the description below). If there is no matching escape character, the escape character will be ignored.
4. The \% and \_ sequences are used to search for literal instances of % and _ in pattern-matching contexts where they would otherwise be interpreted as wildcard characters.If you use \% or \_ outside of pattern-matching contexts, they evaluate to the strings \% and \_, not to % and _.
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册