标识符
2025年1月3日大约 2 分钟
标识符
在 IoTDB 中,标识符用于标识 database、table、column、function 或其他对象名称。
1 命名规则
- 开头字符:标识符必须以字母开头。
- 后续字符:可以包含字母、数字和下划线。
- 特殊字符:如果标识符包含除字母、数字和下划线之外的其他字符,必须用双引号(
"
)括起来。 - 转义字符:在双引号定界的标识符中,使用两个连续的双引号(
""
)来表示一个双引号字符。
1.1 示例
以下是一些有效的标识符示例:
test
"table$partitions"
"identifierWith"
"double"
"quotes"
无效的标识符示例,使用时必须用双引号引用:
table-name // 包含短横线
123SchemaName // 以数字开头
colum$name@field // 包含特殊字符且未用双引号括起
2 大小写敏感性
标识符不区分大小写,且系统存储标识符时不保留原始大小写,查询结果会根据用户在SELECT
子句中指定的大小写显示列名。
双引号括起来的标识符也不区分大小写。
2.1 示例
当创建了一个名为 Device_id
的列,在查看表时看到为 device_id
,但返回的结果列与用户查询时指定的格式保持相同为Device_ID
:
IoTDB> create table table1(Device_id STRING TAG, Model STRING ATTRIBUTE, TemPerature FLOAT FIELD, Humidity DOUBLE FIELD)
IoTDB> desc table1;
+-----------+---------+-----------+
| ColumnName| DataType| Category|
+-----------+---------+-----------+
| time|TIMESTAMP| TIME|
| device_id| STRING| TAG|
| model| STRING| ATTRIBUTE|
|temperature| FLOAT| FIELD|
| humidity| DOUBLE| FIELD|
+-----------+---------+-----------+
IoTDB> select TiMe, Device_ID, MoDEL, TEMPerature, HUMIdity from table1;
+-----------------------------+---------+------+-----------+--------+
| TiMe|Device_ID| MoDEL|TEMPerature|HUMIdity|
+-----------------------------+---------+------+-----------+--------+
|1970-01-01T08:00:00.001+08:00| d1|modelY| 27.2| 67.0|
+-----------------------------+---------+------+-----------+--------+