43 lines
2.3 KiB
Markdown
43 lines
2.3 KiB
Markdown
---
|
||
sidebar_label: 命名与边界
|
||
title: 命名与边界
|
||
description: 合法字符集和命名中的限制规则
|
||
---
|
||
|
||
## 名称命名规则
|
||
|
||
1. 合法字符:英文字符、数字和下划线。
|
||
1. 允许英文字符或下划线开头,不允许以数字开头。
|
||
1. 不区分大小写。
|
||
1. 不能是[保留关键字](./20-keywords.md)。
|
||
1. 转义后表(列)名规则:
|
||
为了兼容支持更多形式的表(列)名,TDengine 引入新的转义符 "`"。使用转义字符以后:
|
||
- 不再对转义字符中的内容进行大小写统一,即可以保留用户指定表名中的大小写属性,例如:\`aBc\` 和 \`abc\` 是不同的表(列)名,但是 abc 和 aBc 是相同的表(列)名。
|
||
- 可以创建包含字母、数字和下划线以外字符的表(列)名,例如:\`abc@TD\`,但是转义后名称中仍然不能包含`.`,否则会提示`The table name cannot contain '.'`。
|
||
- 可以创建以数字开头的表(列)名,例如\`1970\`。
|
||
- 可以创建以[保留关键字](./20-keywords.md)命名的表(列)名,例如\`select\`。
|
||
|
||
## 密码合法字符集
|
||
|
||
`[a-zA-Z0-9!?$%^&*()_–+={[}]:;@~#|<,>.?/]`
|
||
|
||
去掉了 `` ‘“`\ `` (单双引号、撇号、反斜杠、空格)
|
||
|
||
## 一般限制
|
||
|
||
- 数据库名最大长度为 64 字节
|
||
- 表名最大长度为 192 字节,不包括数据库名前缀和分隔符
|
||
- 每行数据最大长度 48KB(从 3.0.5.0 版本开始为 64KB) (注意:数据行内每个 BINARY/NCHAR 类型的列还会额外占用 2 个字节的存储位置)
|
||
- 列名最大长度为 64 字节
|
||
- 最多允许 4096 列,最少需要 2 列,第一列必须是时间戳。
|
||
- 标签名最大长度为 64 字节
|
||
- 最多允许 128 个,至少要有 1 个标签,一个表中标签值的总长度不超过 16KB
|
||
- SQL 语句最大长度 1048576 个字符
|
||
- SELECT 语句的查询结果,最多允许返回 4096 列(语句中的函数调用可能也会占用一些列空间),超限时需要显式指定较少的返回数据列,以避免语句执行报错
|
||
- 库的数目,超级表的数目、表的数目,系统不做限制,仅受系统资源限制
|
||
- 数据库的副本数只能设置为 1 或 3
|
||
- 用户名的最大长度是 23 字节
|
||
- 用户密码的最大长度是 31 字节
|
||
- 总数据行数取决于可用资源
|
||
- 单个数据库的虚拟结点数上限为 1024
|