命名与边界

    1. 不区分大小写

    2. 例如:`aBc` 和 `abc` 是不同的表(列)名,但是 abc 和 aBc 是相同的表(列)名。 需要注意的是转义字符中的内容必须是可打印字符。

    • 数据库名最大长度为 64 字节
    • 表名最大长度为 192 字节,不包括数据库名前缀和分隔符
    • 每行数据最大长度 48KB (注意:数据行内每个 BINARY/NCHAR 类型的列还会额外占用 2 个字节的存储位置)
    • 列名最大长度为 64 字节
    • 最多允许 4096 列,最少需要 2 列,第一列必须是时间戳。
    • 标签名最大长度为 64 字节
    • SQL 语句最大长度 1048576 个字符
    • SELECT 语句的查询结果,最多允许返回 4096 列(语句中的函数调用可能也会占用一些列空间),超限时需要显式指定较少的返回数据列,以避免语句执行报错
    • 库的数目,超级表的数目、表的数目,系统不做限制,仅受系统资源限制
    • 数据库的副本数只能设置为 1 或 3
    • 用户名的最大长度是 23 字节
    • 用户密码的最大长度是 128 字节
    • 总数据行数取决于可用资源
    • 单个数据库的虚拟结点数上限为 1024

    只能由字母、数字、下划线构成,数字不能在首位,长度不能超过 192 字节,不区分大小写。这里表名称不包括数据库名的前缀和分隔符。

    转义后表(列)名规则:

    为了兼容支持更多形式的表(列)名,TDengine 引入新的转义符 “`“,可以避免表名与关键词的冲突,同时不受限于上述表名合法性约束检查,转义符不计入表名的长度。 转义后的表(列)名同样受到长度限制要求,且长度计算的时候不计算转义符。使用转义字符以后,不再对转义字符中的内容进行大小写统一。

    note

    转义字符中的内容必须是可打印字符。