

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立資料庫物件
<a name="query-editor-v2-object-create"></a>

您可以建立資料庫物件，包括資料庫、結構描述、資料表和使用者定義函數 (UDF)。您必須連線至叢集或工作群組和資料庫，才能建立資料庫物件。

## 建立資料庫
<a name="query-editor-v2-object-create-database"></a>

您可以使用查詢編輯器 v2 在叢集或工作群組中建立資料庫。

**若要建立資料庫**

如需有關資料庫的資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [CREATE DATABASE](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_DATABASE.html)。

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**資料庫**。

1. 輸入**資料庫名稱**。

1. (選擇性) 選取**使用者和群組**，然後選擇**資料庫使用者**。

1. (選擇性) 您可以從資料共用或 AWS Glue Data Catalog建立資料庫。如需詳細資訊 AWS Glue，請參閱《 *AWS Glue 開發人員指南*》中的[什麼是 AWS Glue？](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html)。
   + (選擇性) 選取**使用資料共用建立**，然後選擇**選取資料共用**。此清單包含可用來在目前的叢集或工作群組中建立取用者資料共用的生產者資料共用。
   + （選用） 選取**使用 建立 AWS Glue Data Catalog**，然後選擇**選擇 AWS Glue 資料庫**。在**資料目錄結構描述**中，輸入在參考由三個部分組成的名稱 (database.schema.table) 中的資料時，會用於結構描述的名稱。

1. 選擇**建立資料庫**。

   樹狀檢視面板中隨即會顯示新的資料庫。

   當您選擇選擇性步驟來查詢從資料共用建立的資料庫時，請連線到叢集或工作群組中的 Amazon Redshift 資料庫 (例如，預設資料庫 `dev`)，並使用由三個部分組成的標記法 (datase.schema.table) (其會參考您選取**使用資料共用建立**時所建立的資料庫名稱)。資料共用資料庫會列在查詢編輯器 v2 的編輯器標籤中，但未啟用直接連線功能。

   當您選擇選用步驟來查詢從 建立的資料庫 AWS Glue Data Catalog時，請連線至叢集或工作群組中的 Amazon Redshift 資料庫 （例如，預設資料庫 `dev`)，並使用三部分表示法 (database.schema.table)，以參考您選取**使用 建立 AWS Glue Data Catalog**時建立的資料庫名稱、您在**資料目錄結構描述**中命名的結構描述，以及 中的資料表 AWS Glue Data Catalog。類似於：

   ```
   SELECT * FROM glue-database.glue-schema.glue-table
   ```
**注意**  
確認您已使用 連線方法連線至預設資料庫 **使用 IAM 身分的暫時登入資料**，且您的 IAM 登入資料已獲得 AWS Glue 資料庫的使用權限。  

   ```
   GRANT USAGE ON DATABASE glue-database to "IAM:MyIAMUser"
   ```

    AWS Glue 資料庫會列在查詢編輯器 v2 編輯器索引標籤中，但不會啟用直接連線。

   如需查詢 的詳細資訊 AWS Glue Data Catalog，請參閱《*Amazon Redshift 資料庫開發人員指南*》中的以[消費者身分使用 Lake Formation 受管資料共用](https://docs.aws.amazon.com/redshift/latest/dg/lake-formation-getting-started-consumer.html)和[以生產者身分使用 Lake Formation 受管資料共用](https://docs.aws.amazon.com/redshift/latest/dg/lake-formation-getting-started-producer.html)。

**以資料共用取用者身分建立資料庫的範例**

下列範例描述的是所使用的一個特定案例，目的是使用查詢編輯器 v2 從資料共用建立資料庫。請檢閱此案例，以了解如何在環境中從資料共用建立資料庫。此案例使用兩個叢集，分別是 `cluster-base` (生產者叢集) 和 `cluster-view` (取用者叢集)。

1. 使用 Amazon Redshift 主控台在叢集 `cluster-base` 中為資料表 `category2` 建立資料共用。生產者資料共用會命名為 `datashare_base`。

   如需有關建立資料共用的資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[在 Amazon Redshift 中跨叢集共用資料](https://docs.aws.amazon.com/redshift/latest/dg/datashare-overview.html)。

1. 使用 Amazon Redshift 主控台接受資料共用 `datashare_base` 作為叢集 `cluster-view` 中資料表 `category2` 的取用者。

1. 檢視查詢編輯器 v2 中的樹狀檢視面板，該面板會將 `cluster-base` 的階層顯示為：
   + 叢集：`cluster-base`
     + 資料庫：`dev`
       + 結構描述︰`public`
         + 資料表：`category2`

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**資料庫**。

1. 在**資料庫名稱**中輸入 `see_datashare_base`。

1. 選取**使用資料共用建立**，然後選擇**選取資料共用**。選擇 `datashare_base` 作為您要建立之資料庫的來源。

   查詢編輯器 v2 中的樹狀檢視面板會將 `cluster-view` 的階層顯示為：
   + 叢集：`cluster-view`
     + 資料庫：`see_datashare_base`
       + 結構描述︰`public`
         + 資料表：`category2`

1. 當您查詢資料時，請連線到叢集 `cluster-view` 的預設資料庫 (名稱一般是 `dev`)，但在 SQL 中請參考資料共用資料庫 `see_datashare_base`。
**注意**  
在查詢編輯器 v2 的編輯器檢視中，所選取的叢集為 `cluster-view`。所選取的資料庫為 `dev`。資料庫 `see_datashare_base` 會列出，但未啟用直接連線功能。您選擇 `dev` 資料庫，並在執行的 SQL 中參考 `see_datashare_base`。

   ```
   SELECT * FROM "see_datashare_base"."public"."category2";
   ```

   查詢會從叢集 `cluster_base` 中的資料共用 `datashare_base` 擷取資料。

**從 建立資料庫的範例 AWS Glue Data Catalog**

下列範例說明使用 AWS Glue Data Catalog 查詢編輯器 v2 從 建立資料庫的特定案例。檢閱此案例，了解如何從 AWS Glue Data Catalog 環境中的 建立資料庫。這個案例會使用 `cluster-view` 這個叢集來包含您建立的資料庫。

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**資料庫**。

1. 在**資料庫名稱**中輸入 `data_catalog_database`。

1. 選取**使用 建立 AWS Glue Data Catalog**，然後選擇**選擇 AWS Glue 資料庫**。選擇 `glue_db` 作為您要建立之資料庫的來源。

   選擇**資料目錄結構描述**，並輸入 `myschema` 作為要在由三個部分組成的標記法中使用的結構描述名稱。

   查詢編輯器 v2 中的樹狀檢視面板會將 `cluster-view` 的階層顯示為：
   + 叢集：`cluster-view`
     + 資料庫：`data_catalog_database`
       + 結構描述︰`myschema`
         + 資料表：`category3`

1. 當您查詢資料時，請連線到叢集 `cluster-view` 的預設資料庫 (名稱一般是 `dev`)，但在 SQL 中請參考資料庫 `data_catalog_database`。
**注意**  
在查詢編輯器 v2 的編輯器檢視中，所選取的叢集為 `cluster-view`。所選取的資料庫為 `dev`。資料庫 `data_catalog_database` 會列出，但未啟用直接連線功能。您選擇 `dev` 資料庫，並在執行的 SQL 中參考 `data_catalog_database`。

   ```
   SELECT * FROM "data_catalog_database"."myschema"."category3";
   ```

   查詢會擷取由 AWS Glue Data Catalog分類的資料。

## 建立結構描述
<a name="query-editor-v2-object-create-schema"></a>

您可以使用查詢編輯器 v2 在叢集或工作群組中建立結構描述。

**建立結構描述**

如需有關結構描述的資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[結構描述](https://docs.aws.amazon.com/redshift/latest/dg/r_Schemas_and_tables.html)。

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**結構描述**。

1. 輸入**結構描述名稱**。

1. 選擇**本機**或**外部**作為**結構描述類型**。

   如需本機結構描述的相關資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [CREATE SCHEMA](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_SCHEMA.html)。如需外部結構描述的相關資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的 [CREATE EXTERNAL SCHEMA](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html)。

1. 如果您選擇**外部**，則會有下列外部結構描述選項。
   + **Glue Data Catalog** — 可在 Amazon Redshift 中建立會參考 AWS Glue中資料表的外部結構描述。除了選擇 AWS Glue 資料庫之外，請選擇與叢集相關聯的 IAM 角色，以及與 Data Catalog 相關聯的 IAM 角色。
   + **PostgreSQL** — 可在 Amazon Redshift 中建立會參考 Amazon RDS for PostgreSQL 或 Amazon Aurora PostgreSQL 相容版本資料庫的外部結構描述。也請提供連線資訊給資料庫。如需聯合查詢的相關資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[使用聯合查詢來查詢資料](https://docs.aws.amazon.com/redshift/latest/dg/federated-overview.html)。
   + **MySQL** — 可在 Amazon Redshift 中建立會參考 Amazon RDS for MySQL 或 Amazon Aurora MySQL 相容版本資料庫的外部結構描述。也請提供連線資訊給資料庫。如需聯合查詢的相關資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[使用聯合查詢來查詢資料](https://docs.aws.amazon.com/redshift/latest/dg/federated-overview.html)。

1. 選擇**建立結構描述**。

   樹狀檢視面板中便會出現新的結構描述。

## 建立資料表
<a name="query-editor-v2-object-create-table"></a>

您可以使用查詢編輯器 v2 在叢集或工作群組中建立資料表。

**若要建立資料表**

您可以根據指定的逗號分隔值 (CSV) 檔案來建立資料表，也可以定義資料表的每個資料欄。如需有關資料表的資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[設計資料表](https://docs.aws.amazon.com/redshift/latest/dg/c_designing-tables-best-practices.html)和 [CREATE TABLE](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_TABLE_NEW.html)。

請選擇**在編輯器中開啟查詢**，先檢視及編輯 CREATE TABLE 陳述式，再執行查詢以建立資料表。

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**資料表**。

1. 選擇結構描述。

1. 輸入資料表名稱。

1. 選擇 ![\[Plus sign icon representing an addition or new item action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/add-plus.png) **新增欄位**以新增資料欄。

1. 使用 CSV 檔案作為資料表定義的範本：

   1. 選擇**從 CSV 載入**。

   1. 瀏覽至檔案位置。

      如果您使用 CSV 檔案，請確定檔案的第一個資料列包含資料欄標題。

   1. 選擇檔案，然後選擇**開啟**。確認資料欄名稱和資料類型符合所需。

1. 針對每一個資料欄，請選擇該資料欄，然後選擇您想要的選項：
   + 為**編碼**選擇一個值。
   + 選擇**預設值**。
   + 如果您希望資料欄的值遞增，請開啟**自動遞增**。然後指定**自動遞增種子**和**自動遞增步長**的值。
   + 如果資料欄一律應該包含值，請開啟**非 NULL**。
   + 輸入資料欄的**大小**值。
   + 如果您想讓資料欄成為主索引鍵，請開啟**主索引鍵**。
   + 如果您想讓資料欄成為唯一索引鍵，請開啟**唯一索引鍵**。

1. (選擇性) 選擇**資料表詳細資訊**，然後選擇下列任何選項：
   + 分佈索引鍵資料欄和樣式。
   + 排序索引鍵資料欄和排序類型。
   + 開啟**備份**，以將資料表包含在快照中。
   + 開啟**暫存資料表**以將資料表建立為暫存資料表。

1. 選擇**在編輯器中開啟查詢**以繼續指定用來定義資料表的選項，或選擇**建立資料表**以建立資料表。

## 建立函數
<a name="query-editor-v2-object-create-function"></a>

您可以使用查詢編輯器 v2 在叢集或工作群組中建立函數。

**建立 函數**

1. 選擇![\[Plus sign icon inside a circle, indicating an add or create action.\]](http://docs.aws.amazon.com/zh_tw/redshift/latest/mgmt/images/qev2-add.png)**建立**，然後選擇**函數**。

1. 在**類型**中，選擇 **SQL** 或 **Python**。

1. 選擇**結構描述**的值。

1. 輸入函數**名稱**的值。

1. 輸入函數**波動**的值。

1. 以輸入參數的順序，依資料類型選擇**參數**。

1. 在**傳回**中，選擇資料類型。

1. 輸入函數的 **SQL 程式**或 **Python 程式**的程式碼。

1. 選擇**建立**。

如需使用者定義函數 (UDF) 的相關資訊，請參閱《Amazon Redshift 資料庫開發人員指南》**中的[建立使用者定義函數](https://docs.aws.amazon.com/redshift/latest/dg/user-defined-functions.html)。