教程 1:创建和管理数据库、架构和表¶
简介¶
在本教程中,您将学习如何提交 REST 查询,以创建和管理数据库、表和架构。
先决条件¶
备注
如果您已经完成了 Snowflake REST APIs 教程的常见设置 中的步骤,您可以跳过这些前提条件,直接进入本教程的第一步。
在您开始学习本教程之前,您必须完成 常见设置 说明,其中包括以下步骤:
导入 Snowflake REST APIs Postman 集合。
在 Postman 中设置持有者令牌,以对您的连接执行身份验证。
完成这些先决条件后,您就可以开始使用 API 了。
创建一个数据库,并列出可用数据库¶
您可以使用 Postman 创建数据库并列出可用数据库。
要创建一个数据库,请使用以下请求主体,将一条
POST
请求发送到/api/v2/databases
端点,如下所示。{ "name": "demo_db", "kind": "PERMANENT", "comment": "snowflake rest api demo-db", "data_retention_time_in_days": "1", "max_data_extension_time_in_days": "1" }
要列出可用数据库,请发送一条
GET
请求到/api/v2/databases
端点,如下例所示:若要查找名称包含字符串
demo
的数据库,请在 like 查询参数中指定%25demo%25
。若要返回名称以字符串
DEMO_DB
开头的第一个数据库,请在 startsWith 和 showLimit 查询参数中分别指定DEMO_DB
和1
。
有关更多信息,请参阅 Snowflake 数据库 API 参考。
创建架构并列出可用架构¶
您可以使用 Postman 创建一个架构并列出可用架构。
若要创建一个架构,请将一条
POST
请求发送到/api/v2/databases/{database}/schemas
端点,如下所示:将数据库名称 (
demo_db
) 添加到请求标头中的 database 路径变量。将架构名称 (
demo_sc
) 添加到请求主体中。{ "name": "demo_sc", }
若要列出可用架构,请将
GET
请求发送到/api/v2/databases/{database}/schemas
端点。在本例中,您返回第一个名称以字符串DEMO_SC
开头的架构,方法是在 startsWith 和 showLimit 查询参数中分别指定DEMO_SC
和1
。
有关更多信息,请参阅 Snowflake 架构 API 参考。
创建一个表并获取表详情¶
您可以使用 Postman 创建一个表并列出可用表。
若要创建一个表,请将一条
POST
请求发送到/api/v2/databases/{database}/schemas/{schema}/tables
端点,如下所示:在请求标头中分别将数据库名称 (
demo_db
) 和架构名称 (demo_sc
) 添加到 database 和 database 路径变量中。将表名称 (
demo_tbl
) 和表列添加到请求主体中。在本例中,您添加了一个名为C1
的列。{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" } ], "comment": "Demo table for Snowflake REST API" }
若要提取您刚刚创建的表,请将一条
GET
请求发送到/api/v2/databases/{database}/schemas/{schema}/tables/{name}
端点。在本例中,您在 database、schema 和 name 路径变量中分别指定了demo_db
、demo_sc
和demo_tbl
。
有关更多信息,请参阅 Snowflake 表 API 参考。
更改表并提取表详情¶
您可以使用 Postman 来更改表。
若要更改您在上一个教程中创建的表,请将一条
PUT
请求发送到/api/v2/databases/{database}/schemas/{schema}/tables/{name}
端点,如下所示:指定您在对应路径变量中创建的数据库、架构和表的名称。
在请求主体中,输入新的表定义。在本例中,您向表添加一个新列。
{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" }, { "name": "c2", "datatype": "string", "comment": "An string value column" } ], "comment": "Demo table for Snowflake REST API" }
通过将一条
GET
请求发送到/api/v2/databases/{database}/schemas/{schema}/tables/{name}
端点来验证更改。在本例中,您在 database、schema 和 name 路径变量中分别指定了demo_db
、demo_sc
和demo_tbl
。请注意,表现在包含一个新的
C2
列。
有关更多信息,请参阅 Snowflake 表 API 参考。
列出可用表¶
您可以使用 /api/v2/databases/{database}/schemas/{schema}/tables
端点来返回您可使用的所有表的列表。
若要列出所有可用表,请将一条
GET
请求发送到/api/v2/databases/{database}/schemas/{schema}/tables
端点,且不带查询参数,如下所示。在本例中,您分别在 database、schema 和 name 路径变量中指定demo_db
、demo_sc
和demo_tbl
。若要列出每个表中列和约束的完整详情,请添加 recursive 查询参数,并将值设置为
true
,如此处所示。请注意,如果您有多个复杂表,启用此查询参数可能会导致连接不堪重负。
有关更多信息,请参阅 Snowflake 表 API 参考。
下一步是什么?¶
恭喜!在本教程中,您学习了使用 Snowflake REST APIs 管理 Snowflake 数据库、架构和表资源的基本知识。
摘要¶
在此过程中,您完成了以下步骤:
创建和列出数据库。
创建和列出架构。
创建一个表,并提取表详情。
更改表并提取表详情。
列出可用表。
下一个教程¶
您现在可以继续学习 教程 2:创建和管理任务,其中将展示如何创建和管理 Snowflake 任务。