Snowflake - 表格和列


在数据库中,创建的模式是表的逻辑分组。表包含列。表和列是数据库的低级且最重要的对象。在本章中,我们将讨论如何在 Snowflake 中创建表和列。

Snowflake为用户提供了两种方式,使用用户界面和SQL查询创建表和相应的列。如果不提供列的详细信息,用户无法创建表。

使用 Snowflake 的 UI 处理表和列

让我们看看如何使用 Snowflake 的 UI 来处理表和列。

创建表和列

使用唯一的 URL 登录 Snowflake 帐户。单击顶部功能区中的数据库按钮。它导航到数据库视图屏幕。

单击要在其中创建新表的数据库名称。它将导航到数据库属性页面,您可以在其中看到数据库内创建的表/视图/模式等。

如果未选择“表” ,请单击“表”,默认选择“表”。您可以看到在同一数据库中创建的表的列表,否则它是空白的。

创建表

单击“创建”按钮添加表。将会弹出创建表对话框。输入以下字段 -

  • 表名称- test_table

  • 模式名称- 从可用列表中选择 - PUBLIC

  • - 单击添加按钮,然后输入名称、类型、非空或任何默认值。

  • 要添加多列,请持续单击“添加”按钮,然后输入详细信息。现在,单击“完成”按钮。

以下屏幕截图描述了如何添加表和列 -

添加表和列

您可以在视图面板中看到创建的表。

查看表和列

在本节中,我们将讨论如何查看表和列的详细信息,如何创建相似表,如何克隆它以及如何删除表。

单击顶部功能区中的数据库。它将显示数据库的视图面板,其中列出了所有数据库。单击其中存在表的数据库的名称。例如,TEST_DB,如下图所示 -

查看表格

它将显示数据库中所有列出的表。使用“创建”按钮创建新表。使用“创建类似”按钮创建一个与现有表具有相同元数据的表。

单击“创建Like”按钮,将弹出“创建Like 表”对话框。输入新表的名称,然后单击“完成”按钮。

以下屏幕截图解释了此功能 -

创建表类似

在“视图”面板中,您可以看到新表。在本例中,为 TABLE_TEST_1。

  • 使用克隆按钮创建现有表的另一个副本。要执行此操作,请选择一个表并单击克隆按钮。

  • 屏幕上将弹出“克隆表”对话框。输入新表的名称并单击“完成”按钮。

以下屏幕截图显示了克隆功能。

克隆表

您可以在“视图”面板中看到新表。

CloneCreate Like的区别在于“列数据”。Clone 从现有表中获取实际数据,而 Create Like 仅复制表的元数据。它不会复制表中存在的现有数据。

用户也可以通过选择表并单击“删除”按钮来删除表。弹出“删除表”对话框进行确认。单击“是”进行删除,否则单击“否”。

掉落表

使用 Snowflake 的 SQL 接口处理表和列

一旦用户开始处理表和列,相应的数据库和模式就成为重要因素。如果未提供数据库和架构的详细信息,查询将无法成功执行。

有两种方法可以设置数据库和架构详细信息 - 一种使用 Snowflake 的 UI,另一种是在查询中的表名称之前提供数据库名称和架构名称,如以下示例所示 -

SELECT * FROM DATABSE_NAME.SCHEMA_NAME.TABLE_NAME.

在用户界面中,需要执行以下步骤 -

单击右上角“选择架构”旁边的向下箭头。它会弹出一个对话框,用户可以在其中提供以下详细信息 -

  • 角色
  • 仓库
  • 数据库
  • 模式

以下屏幕截图描述了上述步骤 -

Snowflake SQL 接口

现在,当用户运行查询而未在查询中提供数据库名称和架构名称时,它将针对设置的数据库和架构运行,如上所示。如果您需要切换到另一个数据库/模式,您可以经常更改它。

在 SQL 中设置数据库、仓库和架构

使用以下查询为会话设置仓库-

USE WAREHOUSE <WAREHOUSE_NAME>

使用以下查询为会话设置数据库-

USE DATABASE <DATABASE_NAME>

使用以下查询为会话设置模式-

USE SCHEMA <SCHEMA_NAME>

创建表和列

登录 Snowflake 并导航至工作表。默认情况下,登录后会打开工作表,否则单击顶部功能区中的工作表图标。

使用以下查询在数据库 TEST_DB 和模式 TEST_SCHEMA_1 下创建表和列 -

CREATE TABLE "TEST_DB"."TEST_SCHEMA_1"."TEST_TABLE"
   ("ID" NUMBER (10,0) NOT NULL DEFAULT 0, "NAME" VARCHAR (50), "ADDRESS" VARCHAR (100))

单击“运行”按钮来执行查询。当 TEST_TABLE 成功创建时,结果将显示在“结果”面板中。

查看表和列

要查看所有列出的表,可以使用以下 SQL。它带来了所有列出的模式的详细信息。

SHOW TABLES

要查看列定义,请使用以下 SQL -

DESCRIBE TABLE TEST_DB.TEST_SCHEMA_1.TEST_TABLE

要克隆表,请使用以下 SQL -

CREATE TABLE "TEST_DB"."TEST_SCHEMA_1".TEST_TABLE_2 CLONE "TEST_DB"."TEST_SCHEMA_1"."TEST_TABL_1"

要创建 Like 表,请使用以下查询 -

CREATE TABLE "TEST_DB"."TEST_SCHEMA_1".TEST_TABL_1 LIKE "TEST_DB"."TEST_SCHEMA_1"."TEST_TABLE"

要删除表,请使用以下 SQL -

DROP TABLE "TEST_DB"."TEST_SCHEMA_1"."TEST_TABLE_2"

用户可以在每次操作后运行SHOW TABLES查询来验证操作是否完成。