CQL提供了丰富的内置数据类型,包括集合类型。 除了这些数据类型,用户还可以创建自己的自定义数据类型。 下表提供了CQL中可用的内置数据类型的列表。
数据类型 | 常量 | 说明 |
---|---|---|
ascii | strings | 表示ASCII字符串 |
bigint | bigint | 表示64位有符号long类型 |
blob | blobs | 表示任意字节 |
Boolean | booleans | 表示真或假 |
counter | integers | 表示计数器列 |
decimal | integers, floats | 表示可变精度小数 |
double | integers | 表示64位IEEE-754浮点数 |
float | integers, floats | 表示32位IEEE-754浮点数 |
inet | strings | 表示IP地址,IPv4或IPv6 |
int | integers | 表示32位有符号的int类型 |
text | strings | 表示UTF8编码的字符串 |
timestamp | integers, strings | 表示时间戳 |
timeuuid | uuids | 表示1类型UUID |
uuid | uuids | 表示类型1或类型4 |
varchar | strings | 表示UTF8编码的字符串 |
varint | integers | 表示任意精度的整数 |
集合类型
Cassandra查询语言还提供了一个集合数据类型。 下表提供了CQL中可用的集合列表。
集合 | 描述 |
---|---|
list | 列表(list)是一个或多个有序元素的集合。 |
map | 映射(map)是键值对的集合。 |
set | set是一个或多个元素的集合。 |
用户定义的数据类型:
Cqlsh为用户提供了创建自己的数据类型的功能。 下面给出了处理用户定义的数据类型时使用的命令。
- CREATE TYPE – 创建用户定义的数据类型。
- ALTER TYPE – 修改用户定义的数据类型。
- DROP TYPE – 删除用户定义的数据类型。
- DESCRIBE TYPE – 描述用户定义的数据类型。
- DESCRIBE TYPES – 描述用户定义的数据类型。