课程表

Cassandra 基础

Cassandra 键空间操作

Cassandra 表操作

Cassandra CURD操作

Cassandra CQL数据类型

工具箱
速查手册

Cassandra 自定义数据类型

当前位置:免费教程 » 数据库/运维 » Cassandra

CQL提供了创建和使用用户定义的数据类型的功能。您可以创建一个数据类型来处理多个字段。本章介绍如何创建,更改和删除用户定义的数据类型。

创建用户定义的数据类型

命令CREATE TYPE用于创建用户定义的数据类型。其语法如下:

  1. CREATE TYPE <keyspace name>. <data typename>
  2. ( variable1, variable2).

示例

下面给出了创建用户定义数据类型的示例。在此示例中,我们正在创建一个包含以下详细信息的card_details数据类型。

字段字段名称数据类型
credit card nonumint
credit card pinpinint
name on credit cardnametext
cvvcvvint
Contact details of card holderphoneset
  1. cqlsh:tutorialspoint> CREATE TYPE card_details (
  2. ... num int,
  3. ... pin int,
  4. ... name text,
  5. ... cvv int,
  6. ... phone set<int>
  7. ... );

注:用于用户定义数据类型的名称不应与保留类型名称一致。

验证

使用DESCRIBE命令验证是否已创建创建的类型。

  1. CREATE TYPE tutorialspoint.card_details (
  2. num int,
  3. pin int,
  4. name text,
  5. cvv int,
  6. phone set<int>
  7. );

更改用户定义的数据类型

ALTER TYPE命令用于更改现有数据类型。使用ALTER,您可以添加新字段或重命名现有字段。

将字段添加到类型

使用以下语法向现有用户定义的数据类型添加新字段。

  1. ALTER TYPE typename
  2. ADD field_name field_type;

以下代码向Card_details数据类型添加了一个新字段。这里我们添加一个名为email的新字段。

  1. cqlsh:tutorialspoint> ALTER TYPE card_details ADD email text;

验证

使用DESCRIBE命令验证是否添加新字段。

  1. cqlsh:tutorialspoint> describe type card_details;
  2. CREATE TYPE tutorialspoint.card_details (
  3. num int,
  4. pin int,
  5. name text,
  6. cvv int,
  7. phone set<int>,
  8. );

在类型中重命名字段

使用以下语法重命名现有的用户定义数据类型。

  1. ALTER TYPE typename
  2. RENAME existing_name TO new_name;

以下代码更改类型中字段的名称。这里我们将字段电子邮件重命名为邮件。

  1. cqlsh:tutorialspoint> ALTER TYPE card_details RENAME email TO mail;

验证

使用DESCRIBE命令验证类型名称是否已更改。

  1. cqlsh:tutorialspoint> describe type card_details;
  2. CREATE TYPE tutorialspoint.card_details (
  3. num int,
  4. pin int,
  5. name text,
  6. cvv int,
  7. phone set<int>,
  8. mail text
  9. );

删除用户定义的数据类型

DROP TYPE是用于删除用户定义的数据类型的命令。下面给出了一个删除用户定义数据类型的示例。

示例

在删除之前,使用DESCRIBE_TYPES命令验证所有用户定义的数据类型的列表,如下所示。

  1. cqlsh:tutorialspoint> DESCRIBE TYPES;
  2. card_details card

从这两种类型中,删除名为card的类型,如下所示。

  1. cqlsh:tutorialspoint> drop type card;

使用DESCRIBE命令验证数据类型是否丢失。

  1. cqlsh:tutorialspoint> describe types;
  2.  
  3. card_details
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号