

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

# DynamoDB 專用 NoSQL Workbench
<a name="workbench"></a>

 Amazon DynamoDB 專用 NoSQL Workbench 是用於現代資料庫開發和操作的跨平台用戶端 GUI 應用程式。適用於 Windows、macOS 和 Linux。NoSQL Workbench 可讓您設計 DynamoDB 資料模型、將存取模式定義為實際的 DynamoDB 操作，並使用範例資料進行驗證。此外，您可以將資料模型組織到專案中。NoSQL Workbench 包含 DynamoDB 本機，可讓您先測試資料表和索引，再將資料模型遞交至雲端。若要深入了解 DynamoDB 本機版及其要求，請參閱 [設定 DynamoDB 本機版 (可下載版本)](DynamoDBLocal.md)。

**資料模型建立工具**  
 使用適用於 DynamoDB 的 NoSQL Workbench，您可以從頭開始新的專案，或使用符合您使用案例的範例專案。然後，您可以設計資料表和全域次要索引、定義屬性和設定範例資料。您也可以將存取模式視覺化為實際的 DynamoDB 操作 (PutItem、UpdateItem、Query 等），並根據設定的範例資料執行這些操作，以驗證存取模式是否如預期運作，並根據驗證結果調整資料模型。最後，經過驗證後，您會將模型遞交至 DynamoDB 本機或 AWS 您的帳戶，以供進一步測試和生產使用。對於協同合作，您可以匯入和匯出設計的資料模型。如需詳細資訊，請參閱[使用 NoSQL Workbench 建立資料模型](workbench.Modeler.md)。

**操作建置器**  
NoSQL Workbench 提供強大的圖形使用者介面供您開發及測試查詢。您可以使用 *operation builder* (操作建置器) 來檢視、探索及查詢即時資料集。結構化操作建置器支援投影表達式、條件表達式，並以多種語言產生範例程式碼。您可以將資料表從一個 Amazon DynamoDB 帳戶直接複製到不同區域中的另一個 Amazon DynamoDB 帳戶。您也可以在 DynamoDB 本機版和 Amazon DynamoDB 帳戶之間直接複製多個資料表，以便在開發環境之間更快速地複製資料表的索引鍵結構描述 (並可選擇 GSI 結構描述和項目)。如需詳細資訊，請參閱[使用 NoSQL Workbench 探索資料集與建立操作](workbench.querybuilder.md)。

使用 NoSQL Workbench 進行資料建模的概念，由以下影片詳細說明。

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/p5va6ZX9_o0?si=vqQuf6FjoBuK1phR/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/p5va6ZX9_o0?si=vqQuf6FjoBuK1phR)


**Topics**
+ [

# 下載 DynamoDB 專用 NoSQL Workbench
](workbench.settingup.md)
+ [

# 使用 NoSQL Workbench 建立資料模型
](workbench.Modeler.md)
+ [

# 使用 NoSQL Workbench 探索資料集與建立操作
](workbench.querybuilder.md)
+ [

# NoSQL Workbench 的範例資料模型
](workbench.SampleModels.md)
+ [

# NoSQL Workbench 的版本歷史記錄
](WorkbenchDocumentHistory.md)

# 下載 DynamoDB 專用 NoSQL Workbench
<a name="workbench.settingup"></a>

請依照這些指示下載適用於 Amazon DynamoDB 的 NoSQL Workbench 和 DynamoDB 本機。

**若要下載 NoSQL Workbench 和 DynamoDB 本機版**
+ 下載適用您作業系統的 NoSQL Workbench。  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/amazondynamodb/latest/developerguide/workbench.settingup.html)

**注意**  
NoSQL Workbench 包含 DynamoDB local 做為安裝程序的一部分。  
執行 DynamoDB 本機時，需要 Java Runtime Environment (JRE) 17.x 版或更新版本。

**注意**  
NoSQL Workbench 支援 Ubuntu 12.04、Fedora 21 和 Debian 8，或這些 Linux 發行版本的任何更新版本。  
Ubuntu 安裝需要兩個必要軟體： `libfuse2`和 `curl`。  
Ubuntu 22.04 不再預設安裝 libfuse2。若要解決此問題，請針對最新的 Ubuntu 版本執行 `sudo add-apt-repository universe && sudo apt install libfuse2`以安裝 。  
針對 cURL，執行 `sudo apt update && sudo apt upgrade && sudo apt install curl`。

# 使用 NoSQL Workbench 建立資料模型
<a name="workbench.Modeler"></a>

您可以使用適用於 Amazon DynamoDB 的 NoSQL Workbench 中的資料模型工具來建立新的資料模型，或根據滿足應用程式資料存取模式的現有資料模型來設計模型。資料模型建立工具包含幾個協助您開始的範例資料模型。

**Topics**
+ [

# 建立新的資料模型
](workbench.Modeler.CreateNew.md)
+ [

# 匯入現有的資料模型
](workbench.Modeler.ImportExisting.md)
+ [

# 編輯現有的資料模型
](workbench.Modeler.Edit.md)
+ [

# 將範例資料新增至資料模型
](workbench.Modeler.AddData.md)
+ [

# 新增和驗證存取模式
](workbench.Modeler.AccessPatterns.md)
+ [

# 從 CSV 檔案匯入範例資料
](workbench.Modeler.ImportCSV.md)
+ [

# 面向
](workbench.Modeler.Facets.md)
+ [

# 使用彙總檢視在資料模型中檢視所有資料表
](workbench.Modeler.AggregateView.md)
+ [

# 匯出資料模型
](workbench.Modeler.ExportModel.md)
+ [

# 向 DynamoDB 遞交資料模型
](workbench.Modeler.Commit.md)

# 建立新的資料模型
<a name="workbench.Modeler.CreateNew"></a>

使用 NoSQL Workbench，在 Amazon DynamoDB 中依照這些步驟建立新的資料模型。

**建立新的資料模型**

1.  開啟 NoSQL Workbench，然後在主畫面上，選取**手動建立模型**。

    將開啟新頁面，其中包含第一個資料表的空白組態。NoSQL Workbench 會使用預設名稱 （即 untitled-2) 建立所有新的資料模型，並將其新增至 **Drafts** 專案資料夾。

1.  在**資料表組態畫面上**，指定下列項目：
   +  **Table Name** (資料表名稱)：輸入資料表的唯一名稱。
   +  **分割區索引鍵** — 輸入分割區索引鍵名稱，並指定其類型。或者，您也可以選擇更精細的資料類型格式來產生範例資料。
   +  如果您想要新增**排序索引鍵**，請指定排序索引鍵名稱及其類型。或者，您可以選擇更精細的資料類型格式來產生範例資料。
**注意**  
 若要深入了解主索引鍵設計、設計、有效使用分割區索引鍵以及使用排序索引鍵，請參閱以下內容：  
 [主索引鍵](HowItWorks.CoreComponents.md#HowItWorks.CoreComponents.PrimaryKey) 
 [在 DynamoDB 中設計與有效運用分割區索引鍵的最佳實務](bp-partition-key-design.md) 
 [使用排序索引鍵組織 DynamoDB 資料的最佳實務](bp-sort-keys.md) 

1. 您可以新增其他屬性，以更清楚地驗證模型和存取模式。若要新增其他屬性：
   +  選擇**新增屬性**。
   +  指定屬性名稱和其類型。
   +  或者，您可以選擇更精細的資料類型格式來產生範例資料。

1.  若要新增全域次要索引，請選擇 **Add global secondary index** (新增全域次要索引)。指定 **Global secondary index name (全域次要索引名稱)**、**Partition key (分割區索引鍵)** 屬性和 **Projection type (投射類型)**。

   如需在 DynamoDB 中使用全域次要索引的詳細資訊，請參閱[全域次要索引](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSI.html)。

1.  或者，**新增面向**。面向是 NoSQL Workbench 中的虛擬建構模組。它不是 DynamoDB 中的功能建構。NoSQL Workbench 中的面向可協助您視覺化應用程式 DynamoDB 的不同資料存取模式，其中只有資料表中的資料子集。
**注意**  
 我們建議您使用 [新增和驗證存取模式](workbench.Modeler.AccessPatterns.md) 視覺化您的應用程式如何存取 DynamoDB 中的資料，而不是 Facets。存取模式會反映您的實際資料庫互動，並協助您為使用案例建置正確的資料模型，而面向是非功能視覺化。

    選擇 **Add facet** (新增面向)。指定下列內容：
   +  **Facet name** (面向名稱)。
   +  **分割區索引鍵別名**有助於分辨此面向視圖。
   +  如果您為資料表提供**排序索引鍵，則為排序索引鍵別名**。 ****
   +  選擇屬於此面向的**屬性**。

    若您想新增更多面向，請重複執行此步驟。

1.  最後，按一下**儲存**按鈕來建立資料表。

1.  如果您需要其他**資料表**或**全域次要索引**，請按一下您剛建立之資料表上方的 **\$1** 圖示。

# 匯入現有的資料模型
<a name="workbench.Modeler.ImportExisting"></a>

您可以使用 Amazon DynamoDB 專用 NoSQL Workbench，藉由匯入與修改現有的模型來建立資料模型。您能夠以 NoSQL Workbench 模型格式或 [AWS CloudFormation JSON 範本格式](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)匯入資料模型。

**匯入資料模型**

1.  開啟 NoSQL Workbench，然後在主畫面上選取**匯入模型**。您可以匯入 NoSQL Workbench 模型格式或 CloudFormation JSON 範本。

1.  您可以將匯入的模型新增至現有專案，或建立新的專案。如果您未選擇不同的專案，您的模型會新增至草稿專案資料夾。

1.  按一下**瀏覽桌面**，然後選擇要從電腦匯入的模型。

# 編輯現有的資料模型
<a name="workbench.Modeler.Edit"></a>

**編輯現有的使用者**

1. 若要開始變更現有模型，請在模型建構器頁面中開啟模型。

1. 在資源選取器面板中，您會看到**資料表**和**全域次要索引**的清單。

1. 若要編輯**資料表**或**全域次要索引**，請先按一下資源選擇器面板中的名稱，然後使用頂端的動作圖示。可用的動作為**刪除**、**複製**和**編輯**。

1. 如果您想要編輯**模型詳細資訊**，請按一下模型名稱旁的三點圖示。

1. 從那裡，您可以按一下**編輯模型詳細資訊**並相應地編輯資訊。

1. 您也可以從相同的選單**複製**、**移動**、**刪除**和**匯出**模型。

1. 若要變更為另一個模型，您可以再次瀏覽主畫面，或使用模型選取下拉式清單。

# 將範例資料新增至資料模型
<a name="workbench.Modeler.AddData"></a>

**自動產生範例資料**

1. 開啟 NoSQL Workbench，然後在主畫面上，按一下您要新增範例資料的模型名稱。

1. 按一下主要內容工具列中的其他動作 （三點圖示），然後選取**新增範例資料**。

1. 輸入您要產生的範例資料項目數量，然後選取**確認**。

1. 自動產生範例資料可協助您產生 1 到 5000 列的資料，以供立即使用。您可以指定精細的範例資料類型，以根據您的設計和測試需求建立真實的資料。若要利用此功能產生真實的資料，您需要在資料模型建立工具中指定屬性的範例資料類型格式。如需指定範例資料類型格式[建立新的資料模型](workbench.Modeler.CreateNew.md)，請參閱 。

**若要一次新增一個項目的範例資料**

1. 開啟您要編輯的模型，然後選擇您要新增範例資料的資料表。按一下主要內容工具列中的其他動作 （三點圖示），然後選取**編輯資料**。

1. 現在您可以新增、刪除和編輯資料列。進行必要的變更之後，請按一下**儲存**按鈕。

# 新增和驗證存取模式
<a name="workbench.Modeler.AccessPatterns"></a>

您可以使用適用於 Amazon DynamoDB 的 NoSQL Workbench 來建立、存放和驗證*存取模式*。

**注意**  
 如需[識別正確存取模式的詳細資訊，請參閱識別資料](https://docs.aws.amazon.com/prescriptive-guidance/latest/dynamodb-data-modeling/step3.html)存取模式。

**建立存取模式**

1.  開啟 NoSQL Workbench，然後在主畫面上，按一下您要新增存取模式的模型名稱。

1.  在左側，選擇**存取模式**索引標籤，然後按一下 **\$1** 圖示。

1.  在下一個畫面上，提供**名稱**、選用**的描述**、存取模式的**類型**，以及要測試存取模式的**資料表**或**全域次要索引**。
**注意**  
 NoSQL Workbench 目前支援下列存取模式的操作：`Scan`、`Query`、`GetItem`、`PutItem`、`UpdateItem`、`DeleteItem`。Amazon DynamoDB 支援更廣泛的操作清單。

1.  建立存取模式之後，您可以切換到**驗證**索引標籤，以驗證您的資料模型是否設計為傳回存取模式的預期結果。[將範例資料新增至資料模型](workbench.Modeler.AddData.md) 如需如何自動產生資料表範例資料的詳細資訊，請參閱 。不同類型的存取模式將支援不同的輸入參數。
**注意**  
為了驗證存取模式，NoSQL Workbench 會在連接埠 `8001`（預設） 上啟動單獨的 DynamoDB 本機資料庫，其中包含儲存在記憶體中的資料表和索引。  
NoSQL Workbench 會自動將模型中的範例資料新增至暫存資料表。
如果您編輯範例資料或資料模型本身，NoSQL Workbench 會更新暫時資料表。
當您關閉應用程式時，會清除此暫時資料庫。

**編輯您的存取模式**

1.  開啟 NoSQL Workbench，然後在主畫面上，按一下您要編輯存取模式的模型名稱。

1.  在左側，選擇**存取模式**索引標籤。

1. 若要編輯存取模式，請從左側的清單中選擇。

1. 在頂端列中，按一下**編輯**動作按鈕。

# 從 CSV 檔案匯入範例資料
<a name="workbench.Modeler.ImportCSV"></a>

如果您有 CSV 檔案預先存在範例資料，您可以將其匯入 NoSQL Workbench。這使您可以快速填入模型取樣資料，而無需逐行輸入。

CSV 檔案中的欄名稱必須與資料模型中的屬性名稱相符，但不需要以相同的順序排列。例如，如果您的資料模型具有名為 `LoginAlias`、`FirstName`，以及 `LastName`，您的 CSV 列可以是 `LastName`、`FirstName`，以及 `LoginAlias`。

您一次最多可從 CSV 檔案匯入 150 個資料列。

**若要從 CSV 檔案匯入資料至 NoSQL Workbench**

1. 若要將 CSV 資料匯入**資料表**，請先按一下資源面板中的資料表名稱，然後按一下主要內容工具列中的其他動作 （三點圖示）。

1. 選取**匯入範例資料**。

1. 選取 CSV 檔案，然後選擇 **Open** (開啟)。CSV 資料會附加到您的資料表。

# 面向
<a name="workbench.Modeler.Facets"></a>

 在 NoSQL Workbench 中，*構面*可讓您檢視資料表中資料的子集，而無需查看不符合構面限制的記錄。面向是一種視覺資料建模工具，在 DynamoDB 中不作為可用的建構存在，因為其純粹用於輔助存取模式建模。

**注意**  
 我們建議您使用 [新增和驗證存取模式](workbench.Modeler.AccessPatterns.md) 視覺化您的應用程式如何存取 DynamoDB 中的資料，而不是 Facets。存取模式會反映您的實際資料庫互動，並協助您為使用案例建置正確的資料模型，而面向是非功能視覺化。

**建立面向**

1. 在資源選取器面板中，選擇您要編輯的**資料表** 

1. 在頂端列中，按一下**編輯**動作圖示。

1. 向下捲動至**面向篩選條件**區段。

1.  選擇 **Add facet** (新增面向)。指定下列內容：
   +  **Facet name** (面向名稱)。
   +  **分割區索引鍵別名**有助於分辨此面向視圖。
   +  如果您為資料表提供**排序索引鍵，則為排序索引鍵別名**。 ****
   +  選擇屬於此面向的**屬性**。

    若您想新增更多面向，請重複執行此步驟。

# 使用彙總檢視在資料模型中檢視所有資料表
<a name="workbench.Modeler.AggregateView"></a>

NoSQL Workbench for Amazon DynamoDB 中的彙總檢視可讓您視覺化資料模型中的所有資料表和索引。每份資料表都會顯示以下資訊：
+ 資料表欄位名稱
+ 範例資料
+ 所有與資料表相關聯的全域次要索引。NoSQL Workbench 會顯示每個索引的下列資訊：
  + 索引欄位名稱
  + 範例資料

**檢視所有資料表資訊**

1. 開啟 NoSQL Workbench，然後在主畫面上，按一下您要開啟的模型名稱。

1. 在頂端列中，按一下**彙總檢視**。您會在同一個畫面上看到所有資料表和索引的資料。

**將彙總檢視匯出為影像**

1. 選取**彙總檢視**後，按一下三點圖示，然後選擇**匯出彙總檢視**

1. 所有資料表和索引的 PNG 映像封存將呈現以供下載。

# 匯出資料模型
<a name="workbench.Modeler.ExportModel"></a>

在使用 Amazon DynamoDB 專用 NoSQL Workbench 建立資料模型後，即可以 NoSQL Workbench 模型格式或 [AWS CloudFormation JSON 範本格式](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)來儲存和匯出該模型。

**匯出資料模型**

1. 開啟 NoSQL Workbench，然後在主畫面上，按一下您要編輯的模型名稱。

1. 按一下資料模型名稱旁的三點圖示，然後選取**匯出模型**。

1.  選擇是否以 NoSQL Workbench 模型格式或 CloudFormation JSON 範本格式匯出資料模型。
   +  如果您想要使用 **NoSQL Workbench** 與其他團隊成員共用模型，或稍後將其匯入 NoSQL Workbench，請選擇 NoSQL Workbench 模型格式。
   +  如果您想要將模型直接部署到 ， AWS 或將其整合到您的infrastructure-as-code工作流程，請選擇 **CloudFormation JSON 範本**格式。

# 向 DynamoDB 遞交資料模型
<a name="workbench.Modeler.Commit"></a>

 當您滿意資料模型後，即可向 Amazon DynamoDB 遞交模型。

**注意**  
此動作會在 中 AWS 為資料模型中呈現的資料表和全域次要索引建立伺服器端資源。
NoSQL Workbench 預設會使用隨需容量建立資料表和索引。

**向 DynamoDB 遞交資料模型**

1. 開啟 NoSQL Workbench，然後在主畫面上，按一下您要遞交的模型名稱。

1. 在頂端列中，按一下**遞交**。

1. 選擇現有的連線，或按一下新增連線按鈕來**建立新的連線**。
   + 指定下列資訊，新增新的連線：
     + **帳戶別名**
     + **AWS 區域**
     + **存取金鑰 ID**
     + **私密存取金鑰**

     如需如何取得存取金鑰的詳細資訊，請參閱[取得 AWS 存取金鑰](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html#SettingUp.DynamoWebService.GetCredentials)。
   + 您可以選擇指定下列項目：
     + [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
     + [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

1. 如果您偏好使用 [DynamoDB 本機](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html)：

   1. 選擇**本機連線**索引標籤。

   1. 按一下**新增連線**按鈕。

   1. 指定 **Connection name** (連線名稱) 和 **Port** (連接埠)。
**注意**  
 若要使用 DynamoDB 本機，您需要使用 NoSQL Workbench 畫面左下角的 **DynamoDB 本機**切換來開啟它。

1. 按一下**遞交**。

# 使用 NoSQL Workbench 探索資料集與建立操作
<a name="workbench.querybuilder"></a>

Amazon DynamoDB 專用 NoSQL Workbench 會提供強大的圖形使用者介面來開發及測試查詢。您可以使用 NoSQL Workbench 中的操作建置器來檢視、探索及查詢即時資料集。結構化操作建置器支援投影表達式、條件表達式，並以多種語言產生範例程式碼。您可以將資料表從一個 Amazon DynamoDB 帳戶直接複製到不同區域中的另一個 Amazon DynamoDB 帳戶。您也可以在 DynamoDB 本機版和 Amazon DynamoDB 帳戶之間直接複製資料表，以便在開發環境之間更快速地複製資料表的索引鍵結構描述 (並可選擇 GSI 結構描述和項目)。您可以在操作建置器中儲存多達 50 個 DynamoDB 資料操作。

**Topics**
+ [

# 連線至即時資料集
](workbench.querybuilder.connect.md)
+ [

# 建置複雜的操作
](workbench.querybuilder.operationbuilder.md)
+ [

# 使用 NoSQL Workbench 複製資料表
](workbench.querybuilder.cloning-tables.md)
+ [

# 將資料匯出到 CSV 檔案
](workbench.querybuilder.exportcsv.md)

# 連線至即時資料集
<a name="workbench.querybuilder.connect"></a>

若要使用 NoSQL Workbench 連線到 Amazon DynamoDB 資料表，您必須先連線到 AWS 您的帳戶。

**新增資料庫連線**

1. 在 NoSQL Workbench 的左側導覽窗格中，選擇 **Operation builder** (操作建置器) 圖示。

1. 選擇 **Add Connection** (新增連線)。

1. 指定下列資訊：
   + **連線名稱 (Connection name)**
   + **AWS 區域**
   + **存取金鑰 ID**
   + **私密存取金鑰**

   如需如何取得存取金鑰的詳細資訊，請參閱[取得 AWS 存取金鑰](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html#SettingUp.DynamoWebService.GetCredentials)。

   您可以選擇指定下列項目：
   + [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
   + [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)

1. 選擇 **Connect** (連線)。

    如果您不想要註冊免費方案帳戶，且寧可使用 [DynamoDB 本機版 (可下載版本)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html)：

   1. 在連線畫面上選擇 **Local** (本機) 標籤。

   1. 指定下列資訊：
      + **連線名稱 (Connection name)**
      + **連接埠**

   1. 選擇 **connect** (連接) 按鈕。
**注意**  
若要連線至 DynamoDB 本機版，請使用終端機手動啟動 DynamoDB 本機版 (請參閱[在電腦上部署 DynamoDB 本機版](DynamoDBLocal.DownloadingAndRunning.md))，或使用 NoSQL Workbench 導覽選單中的 DDB 本機版切換以直接啟動 DynamoDB 本機版。確保連線連接埠與您的 DynamoDB 本機版連接埠相同。

1. 對已建立的連線選擇 **Open** (開啟)。

連線至 DynamoDB 資料庫後，左窗格即會顯示可用的資料表清單。選擇資料表之一會傳回資料表所存放資料的範例。

您現在可以針對選取的資料表執行臨機操作查詢。

若要在資料表上執行查詢，請參閱有關建置操作的下一節，請參閱 [建置複雜的操作](workbench.querybuilder.operationbuilder.md)。

# 建置複雜的操作
<a name="workbench.querybuilder.operationbuilder"></a>

Amazon DynamoDB 專用 NoSQL Workbench 中的操作建置器提供視覺化介面，可讓您在其中執行複雜的資料平面操作。它包括對投射表達式和條件表達示的支援。建立操作後，您可以儲存操作以供日後使用 (最多可儲存 50 個操作)。然後，您可以在 **Saved Operations** (已儲存操作) 選單中瀏覽常用的資料平面操作清單，再使用它們來自動填入和建置新操作。您也可以使用多種語言產生這些操作的範本程式碼。

NoSQL Workbench 支援建置 DynamoDB 專用 [PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html) 陳述式，可讓您使用 SQL 相容查詢語言來與 DynamoDB 互動。NoSQL Workbench 也支援建置 DynamoDB CRUD API 操作。

若要使用 NoSQL Workbench 來建立操作，請在左側導覽窗格中選擇 **Operation builder** (操作建置器) 圖示。

**Topics**
+ [

# 建置 PartiQL 陳述式
](workbench.querybuilder.partiql.md)
+ [

# 建置 API 操作
](workbench.querybuilder.operationbuilder.api.md)

# 建置 PartiQL 陳述式
<a name="workbench.querybuilder.partiql"></a>

若要使用 NoSQL Workbench 來建置 [DynamoDB 專用 PartiQL](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.html) 陳述式，請選擇位於 NoSQL Workbench UI 頂端的 **PartiQL 編輯器**。

您可以在操作建置器中建立以下 PartiQL 陳述式類型。

**Topics**
+ [

## 單一陳述式
](#workbench.querybuilder.partiql.single)
+ [

## 交易
](#workbench.querybuilder.partiql.transaction)
+ [

## 批次
](#workbench.querybuilder.partiql.batch)

## 單一陳述式
<a name="workbench.querybuilder.partiql.single"></a>

若要執行或產生 PartiQL 陳述式的程式碼，請執行以下操作。

1. 選擇視窗頂端附近的 **PartiQL 編輯器**。

1. 輸入有效的 [PartiQL statement](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html) (PartiQL 陳述式)。

1. 如果您的陳述式使用參數：

   1. 選擇 **Optional request parameters** (選用的請求參數)。

   1. 選擇 **Add new parameters** (新增新參數)。

   1. 輸入屬性類型和值。

   1. 如果希望新增其他參數，請重複步驟 b 和 c。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   從顯示的標籤中選取所需的語言。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)。然後輸入操作的名稱，並選擇 **Save** (儲存)。

## 交易
<a name="workbench.querybuilder.partiql.transaction"></a>

若要執行或產生 PartiQL 交易的程式碼，請執行以下操作。

1. 從**更多操作**下拉式清單中選擇 **PartiQLTransaction**。

1. 選擇 **Add a new statement** (新增新陳述式)。

1. 輸入有效的 [PartiQL statement](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html) (PartiQL 陳述式)。
**注意**  
同一個 PartiQL 交易請求中不能同時支援讀取和寫入操作。SELECT 陳述式不能與 INSERT、UPDATE 和 DELETE 陳述式存在於同一個請求中。如需詳細資訊，請參閱[使用 DynamoDB 專用 PartiQL 執行交易](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.multiplestatements.transactions.html)。

1. 如果您的陳述式使用參數

   1. 選擇 **Optional request parameters** (選用的請求參數)。

   1. 選擇 **Add new parameters** (新增新參數)。

   1. 輸入屬性類型和值。

   1. 如果希望新增其他參數，請重複步驟 b 和 c。

1. 如果希望新增更多陳述式，請重複步驟 2 至 4。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   從顯示的標籤中選取所需的語言。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)。然後輸入操作的名稱，並選擇 **Save** (儲存)。

## 批次
<a name="workbench.querybuilder.partiql.batch"></a>

若要執行或產生 PartiQL 批次的程式碼，請執行以下操作。

1. 從**更多操作**下拉式清單中選擇 **PartiQLBatch**。

1. 選擇 **Add a new statement** (新增新陳述式)。

1. 輸入有效的 [PartiQL statement](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.statements.html) (PartiQL 陳述式)。
**注意**  
 同一個 PartiQL 批次請求中不能同時支援讀取和寫入操作，也就是說 SELECT 陳述式不能與 INSERT、UPDATE 和 DELETE 陳述式存在於同一個請求中。不允許對相同項目執行寫入操作。與 BatchGetItem 操作一樣，僅支援單一讀取操作。不支援掃描和查詢操作。如需詳細資訊，請參閱[使用 DynamoDB 專用 PartiQL 執行批次操作](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.multiplestatements.batching.html)。

1. 如果您的陳述式使用參數：

   1. 選擇 **Optional request parameters** (選用的請求參數)。

   1. 選擇 **Add new parameters** (新增新參數)。

   1. 輸入屬性類型和值。

   1. 如果希望新增其他參數，請重複步驟 b 和 c。

1. 如果希望新增更多陳述式，請重複步驟 2 至 4。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   從顯示的標籤中選取所需的語言。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)。然後輸入操作的名稱，並選擇 **Save** (儲存)。

# 建置 API 操作
<a name="workbench.querybuilder.operationbuilder.api"></a>

若要使用 NoSQL Workbench 來建立 DynamoDB CRUD API，請選取位於 NoSQL Workbench 左側的**操作建置器**。

選取**開啟**，然後選擇連線。

您可以在操作建置器中執行以下操作。
+ [刪除資料表](#workbench.querybuilder.operationbuilder.DeleteTable)
+ [建立資料表](#workbench.querybuilder.operationbuilder.CreateTable)
+ [更新資料表](#workbench.querybuilder.operationbuilder.UpdateTable)
+ [放置項目](#workbench.querybuilder.operationbuilder.Put)
+ [更新項目](#workbench.querybuilder.operationbuilder.update)
+ [刪除項目](#workbench.querybuilder.operationbuilder.Delete)
+ [查詢](#workbench.querybuilder.operationbuilder.Query)
+ [掃描](#workbench.querybuilder.operationbuilder.scan)
+ [交易取得項目](#workbench.querybuilder.operationbuilder.transactget)
+ [交易寫入項目](#workbench.querybuilder.operationbuilder.transactwrite)

## 刪除資料表
<a name="workbench.querybuilder.operationbuilder.DeleteTable"></a>

若要執行 `Delete Table` 操作，請執行下列動作。

1. 從**資料表**區段尋找要刪除的資料表。

1. 從水平省略符號功能表中，選取**刪除資料表**。

1. 輸入**資料表名稱**，確認您想要刪除資料表。

1. 選取**刪除**。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[刪除資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 刪除 GSI
<a name="workbench.querybuilder.operationbuilder.DeleteGSI"></a>

若要執行 `Delete GSI` 操作，請執行下列動作。

1. 從**資料表**區段尋找要刪除之資料表的 GSI。

1. 從水平省略號功能表中選取**刪除 GSI**。

1. 輸入 **GSI 名稱**，確認您想要刪除該 GSI。

1. 選取**刪除**。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[刪除資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 建立資料表
<a name="workbench.querybuilder.operationbuilder.CreateTable"></a>

若要執行 `Create Table` 操作，請執行下列動作。

1. 選擇**資料表**區段旁的 **\$1** 圖示。

1. 輸入所需的資料表名稱。

1. 建立分割區索引鍵。

1. 選用：建立排序索引鍵。

1. 自定義容量設定並取消勾選**使用預設容量設定**核取方塊。
   + 您現在可以選取 **Provisioned** (已佈建的) 或 **On-demand capacity** (隨需容量)。

     若選取佈建，您可以設定最小和最大讀寫容量單位。您還可以啟用或停用自動擴展。
   + 如果資料表目前設定為隨需，您將無法指定佈建的輸送量。
   + 如果您從隨需切換到佈建輸送量，則自動擴展將自動套用到所有 GSI，其中包含：最小值：1，最大值：10；目標：70%。

1. 選取**略過 GSI 並建立**，以建立沒有 GSI 的資料表。或者，您可以選擇**下一步**，使用此新資料表建立 GSI。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[建立資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 建立 GSI
<a name="workbench.querybuilder.operationbuilder.CreateGSI"></a>

若要執行 `Create GSI` 操作，請執行下列動作。

1. 尋找您要新增 GSI 的資料表。

1. 從水平省略號功能表中，選取**建立 GSI**。

1. 在**索引名稱**下，命名您的 GSI。

1. 建立分割區索引鍵。

1. 選用：建立排序索引鍵。

1. 從下拉式清單中選擇投影類型選項。

1. 選擇**建立 GSI**。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[建立資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 更新資料表
<a name="workbench.querybuilder.operationbuilder.UpdateTable"></a>

若要使用 `Update Table` 操作更新資料表的容量設定，請執行下列動作。

1. 尋找待更新容量設定的資料表。

1. 從水平省略號功能表中，選取**更新容量設定**。

1. 選取**佈建**或**隨需容量**。

   若選取**佈建**，您可以設定最小和最大讀寫容量單位。您還可以啟用或停用自動擴展。

1. 選取 **Update** (更新)。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[更新資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 更新 GSI
<a name="workbench.querybuilder.operationbuilder.UpdateGSI"></a>

若要使用 `Update Table` 操作更新 GSI 的容量設定，請執行下列動作。

**注意**  
根據預設，全域次要索引會繼承基礎資料表的容量設定。只有在基礎資料表設定為佈建容量模式時，全域次要索引才具有不同的容量模式。當您對佈建模式資料表建立全域次要索引時，必須為該索引的預期工作負載指定讀取與寫入容量單位。如需詳細資訊，請參閱[全域次要索引的佈建輸送量考量](GSI.md#GSI.ThroughputConsiderations)。

1. 尋找待更新容量設定的 GSI。

1. 從水平省略號功能表中，選取**更新容量設定**。

1. 您現在可以選取 **Provisioned** (已佈建的) 或 **On-demand capacity** (隨需容量)。

   若選取**佈建**，您可以設定最小和最大讀寫容量單位。您還可以啟用或停用自動擴展。

1. 選取 **Update** (更新)。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》中的[更新資料表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 放置項目
<a name="workbench.querybuilder.operationbuilder.Put"></a>

您可以使用 `Put Item` 操作以建立項目。若要執行或產生 `Put Item` 操作的程式碼，請執行以下操作。

1. 尋找您要在其中建立項目的資料表。

1. 從**動作**下拉式清單中，選取**建立項目**。

1. 輸入分割區索引鍵值。

1. 輸入排序索引鍵值 (如有)。

1. 若想要新增非索引鍵屬性，請執行以下作業：

   1. 選取**新增其他屬性**。

   1. 指定 **Attribute name** (屬性名稱)、**Type** (類型) 和 **Value** (值)。

1. 如果必須滿足某項條件表達式，`Put Item` 操作才能成功，請執行以下作業：

   1. 選擇 **Condition** (條件)。

   1. 指定屬性名稱、比較運算子、屬性類型和屬性值。

   1. 如需其他條件，請再次選擇 **Condition** (條件)。

   如需詳細資訊，請參閱 [DynamoDB 條件表達式 CLI 範例](Expressions.ConditionExpressions.md)。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   從顯示的標籤中選取所需的語言。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)，然後輸入操作的名稱，再選擇 **Save** (儲存)。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》**中的 [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)。

## 更新項目
<a name="workbench.querybuilder.operationbuilder.update"></a>

若要執行或產生 `Update Item` 操作的程式碼，請執行以下操作：

1. 尋找您要在其中更新項目的資料表。

1. 選取項目。

1. 輸入所選表達式的屬性名稱和屬性值。

1. 若要新增更多表達式，請在**更新表達式**下拉式清單中選擇另一項表達式，然後選取 **\$1** 圖示。

1. 如果必須滿足某項條件表達式，`Update Item` 操作才能成功，請執行以下作業：

   1. 選擇 **Condition** (條件)。

   1. 指定屬性名稱、比較運算子、屬性類型和屬性值。

   1. 如需其他條件，請再次選擇 **Condition** (條件)。

   如需詳細資訊，請參閱 [DynamoDB 條件表達式 CLI 範例](Expressions.ConditionExpressions.md)。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   選擇您想要的語言標籤。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)，然後輸入操作的名稱，再選擇 **Save** (儲存)。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》**中的 [UpdateItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html)。

## 刪除項目
<a name="workbench.querybuilder.operationbuilder.Delete"></a>

若要執行 `Delete Item` 操作，請執行下列動作。

1. 尋找您想要在其中刪除項目的資料表。

1. 選取項目。

1. 從**動作**下拉式清單中，選取**刪除項目**。

1. 選取**刪除**，確認您想要刪除項目。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》**中的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## 複製項目
<a name="workbench.querybuilder.operationbuilder.Duplicate"></a>

您可以建立具有相同屬性的新項目以複製項目。執行下列步驟以複製項目。

1. 尋找您要在其中複製項目的資料表。

1. 選取項目。

1. 從**動作**下拉式清單中，選取**複製項目**。

1. 指定新的分割區索引鍵。

1. 指定新的排序索引鍵 (如有必要)。

1. 選取**執行**。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》**中的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## Query
<a name="workbench.querybuilder.operationbuilder.Query"></a>

若要執行或產生 `Query` 操作的程式碼，請執行以下操作。

1. 從 NoSQL Workbench UI 頂端選取**查詢**。

1. 指定分割區索引鍵值。

1. 如果 `Query` 操作需要排序索引鍵：

   1. 選取 **Sort key** (排序索引鍵)。

   1. 指定比較運算子和屬性值。

1. 選取**查詢**以執行此查詢操作。如果需要更多選項，請勾選**更多選項**核取方塊並繼續執行下列步驟。

1. 如果不是所有屬性都應傳回並附帶操作結果，請選取 **Projection expression** (投射表達式)。

1. 選擇 **\$1** 圖示。

1. 輸入附帶查詢結果傳回的屬性。

1. 如需更多屬性，請選擇 **\$1**。

1. 如果必須滿足某項條件表達式，`Query` 操作才能成功，請執行以下作業：

   1. 選擇 **Condition** (條件)。

   1. 指定屬性名稱、比較運算子、屬性類型和屬性值。

   1. 如需其他條件，請再次選擇 **Condition** (條件)。

   如需詳細資訊，請參閱 [DynamoDB 條件表達式 CLI 範例](Expressions.ConditionExpressions.md)。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   選擇您想要的語言標籤。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)，然後輸入操作的名稱，再選擇 **Save** (儲存)。

如需此操作的詳細資訊，請參閱《Amazon DynamoDB API 參考》**中的 [Query](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html)。

## Scan
<a name="workbench.querybuilder.operationbuilder.scan"></a>

若要執行或產生 `Scan` 操作的程式碼，請執行以下操作。

1. 從 NoSQL Workbench UI 頂端選取**掃描**。

1. 選取**掃描**按鈕以執行此基本掃描操作。如果需要更多選項，請勾選**更多選項**核取方塊並繼續執行下列步驟。

1. 指定屬性名稱以篩選掃描結果。

1. 如果不是所有屬性都應傳回並附帶操作結果，請選取 **Projection expression** (投射表達式)。

1. 如果必須滿足某項條件表達式，scan 操作才能成功，請執行以下作業：

   1. 選擇 **Condition** (條件)。

   1. 指定屬性名稱、比較運算子、屬性類型和屬性值。

   1. 如需其他條件，請再次選擇 **Condition** (條件)。

   如需詳細資訊，請參閱 [DynamoDB 條件表達式 CLI 範例](Expressions.ConditionExpressions.md)。

1. 若要產生程式碼，請選擇 **Generate code** (產生程式碼)。

   選擇您想要的語言標籤。您現在可以複製此程式碼，並使用在您的應用程式中。

1. 若希望立即執行此操作，請選擇 **Run** (執行)。

1. 若想儲存此操作以供日後使用，請選擇 **Save operation** (儲存操作)，然後輸入操作的名稱，再選擇 **Save** (儲存)。

## TransactGetItems
<a name="workbench.querybuilder.operationbuilder.transactget"></a>

若要執行或產生 `TransactGetItems` 操作的程式碼，請執行以下操作。

1. 從 NoSQL Workbench UI 頂端的**更多操作**下拉式清單中，選擇 **TransactGetItems**。

1. 選擇 **TransactGetItem** 附近的 **\$1** 圖示。

1. 指定分割區索引鍵。

1. 指定排序索引鍵 (如有必要)。

1. 選取**執行**以執行操作、**儲存操作**以儲存，或選取**產生程式碼**以產生操作的程式碼。

如需交易的詳細資訊，請參閱 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。

## TransactWriteItems
<a name="workbench.querybuilder.operationbuilder.transactwrite"></a>

若要執行或產生 `TransactWriteItems` 操作的程式碼，請執行以下操作。

1. 從 NoSQL Workbench UI 頂端的**更多操作**下拉式清單中，選擇 **TransactWriteItems**。

1. 從**動作**下拉式清單中，選擇操作。

1. 選擇 **TransactWriteItem** 附近的 **\$1** 圖示。

1. 在**動作**下拉式清單中，選擇您想執行的操作。
   + 如需 `DeleteItem`，請遵循 [刪除項目](#workbench.querybuilder.operationbuilder.Delete) 操作的說明。
   + 如需 `PutItem`，請遵循 [放置項目](#workbench.querybuilder.operationbuilder.Put) 操作的說明。
   + 如需 `UpdateItem`，請遵循 [更新項目](#workbench.querybuilder.operationbuilder.update) 操作的說明。

   若要變更動作順序，請在左側清單中選擇動作，然後選擇上下箭號在清單中上下移動該動作。

   若要刪除動作，請在清單中選擇動作，然後選擇 **Delete** (刪除) (回收桶) 圖示。

1. 選取**執行**以執行操作、**儲存操作**以儲存，或選取**產生程式碼**以產生操作的程式碼。

如需交易的詳細資訊，請參閱 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。

# 使用 NoSQL Workbench 複製資料表
<a name="workbench.querybuilder.cloning-tables"></a>

複製資料表功能會在您的開發環境之間複製資料表的索引鍵結構描述 (並可選擇 GSI 結構描述和項目)。您可以將 DynamoDB 本機版之間的資料表複製到 Amazon DynamoDB 帳戶，甚至將資料表從一個帳戶複製到不同區域中的另一個帳戶，以加快實驗速度。

**複製資料表**

1. 在**操作建置器**中，選取您的連線和區域 (DynamoDB 本機版不提供區域選取功能)。

1. 連線至 DynamoDB 後，請瀏覽您的資料表，然後選取您要複製的資料表。

1. 從水平省略號功能表中，選取**複製**選項。

1. 輸入複製目的地詳細資訊：

   1. 選取連線。

   1. 選取區域 (DynamoDB 本機版無法選擇區域)。

   1. 輸入新的資料表名稱。

   1. 選擇複製選項：

      1. **索引鍵結構描述**預設為選取，且無法取消選取。根據預設，如有可用的主索引鍵及排序索引鍵，資料表進行複製時會一併複製。

      1. 如果要複製的資料表具有 GSI，則會預設選取 **GSI 結構描述**。如有可用的 GSI 主索引鍵及排序索引鍵，資料表進行複製時會一併複製。您可以選擇取消選取 GSI 結構描述，以略過複製 GSI 結構描述。資料表進行複製時，會複製基礎資料表的容量設定，套用為 GSI 的容量設定。您可以使用操作建置器中的 `UpdateTable` 操作，在複製完成後更新資料表的 GSI 容量設定。

1. 輸入要複製的項目數量。如僅需複製索引鍵結構描述和選用的 GSI 結構描述，您可以將**待複製項目**的值維持在 0。可複製的項目數量上限為 5000。

1. 選擇容量模式：

   1. 依預設，會選取**隨需模式**。DynamoDB 隨需提供讀取和寫入請求pay-per-request定價，因此您只需按使用量付費。如需進一步了解，請參閱 [DynamoDB 隨需模式](capacity-mode.md#capacity-mode-on-demand)。

   1. **佈建模式**可讓您指定應用程式需要的每秒讀取和寫入次數。您可以使用自動擴展來自動調整資料表的佈建容量，以回應流量的變動。如需進一步了解，請參閱 [DynamoDB 佈建模式](provisioned-capacity-mode.md)。

1. 選取**複製**以開始複製。

1. 複製程序將在背景執行。當複製資料表的狀態發生變更時，**操作建置器**索引標籤會顯示通知。您可以選取**操作建置器**索引標籤，接著選取箭頭按鈕以存取此狀態。箭頭按鈕位於複製資料表狀態小工具上，靠近功能表側邊欄底部。

# 將資料匯出到 CSV 檔案
<a name="workbench.querybuilder.exportcsv"></a>

您可以從作業建置器將查詢的結果匯出到 CSV 檔案。這可讓您將資料載入試算表或使用偏好的程式設計語言來處理資料。

**匯出至 CSV**

1. 在作業產生器中，執行您選擇的作業，例如掃描或查詢。
**注意**  
您只能將讀取 API 操作和 PartiQL 陳述式的結果匯出至 CSV 檔案。您無法從交易讀取陳述式匯出結果。
目前，您每次可以匯出一個頁面的結果到 CSV 檔案。如果有多個結果頁面，您必須個別匯出每個頁面。

1. 從結果中選取您要匯出的項目。

1. 從**動作**下拉式清單中，選擇**匯出 CSV**。

1. 為 CSV 檔案選擇檔案名稱及位置，然後選擇 **Save** (儲存)。

# NoSQL Workbench 的範例資料模型
<a name="workbench.SampleModels"></a>

模型器的首頁會顯示 NoSQL Workbench 隨附的許多範例模型。本節說明這些模型及其潛在用途。

**Topics**
+ [

## 員工資料模型
](#workbench.SampleModels.EmployeeDataModel)
+ [

## 開發論壇資料模型
](#workbench.SampleModels.DiscussionForumDataModel)
+ [

## 音樂資料庫資料模型
](#workbench.SampleModels.MusicLibraryDataModel)
+ [

## 滑雪渡假村資料模型
](#workbench.SampleModels.SkiResortDataModel)
+ [

## 信用卡優惠資料模型
](#workbench.SampleModels.CreditCardOffersDataModel)
+ [

## 書籤資料模型
](#workbench.SampleModels.BookmarksDataModel)

## 員工資料模型
<a name="workbench.SampleModels.EmployeeDataModel"></a>

這個資料模型是一個簡介模型。它代表了員工的基本詳細資料，例如唯一的別名、名字、姓氏、頭銜、主管和技能。

該資料模型會描繪了一些技術，例如處理複雜工作的屬性，像是擁有不只一個技能。此模型也會透過次要索引 DirectEports 的範例，說明主管與其直屬員工的一對多關係。

此資料模型有助於以下存取模式：
+ 使用員工的登入別名擷取員工記錄，您可透過名為 `Employee` 的表格來加快完成此動作。
+ 按名稱搜尋員工，您可透過名為 `Name` 的員工表格全域次要索引來加快完成此動作。
+ 使用管理員的登入別名擷取管理員的所有直屬報告，您可透過名為 `DirectReports` 的員工表全域次要索引來加快完成此動作。

## 開發論壇資料模型
<a name="workbench.SampleModels.DiscussionForumDataModel"></a>

這個資料模型代表開發論壇。使用此模型，客戶可以與開發人員社群互動、提出問題，以及回應其他客戶的貼文。每一種 AWS 服務都有專用的論壇。任何人都可以在論壇張貼訊息、開始新的主題，每個主題都會收到許多回覆。

此資料模型有助於以下存取模式：
+ 使用論壇名稱擷取論壇記錄，您可透過名為 `Forum` 的表格來加快完成此動作。
+ 擷取某個論壇的特定主題或所有主題，您可透過名為 `Thread` 的資料表來加快完成此動作。
+ 使用張貼使用者的電子郵件地址搜尋回覆，您可透過名為 `PostedBy-Message-Index` 的 Reply 資料表的全域次要索引來加快完成此動作。

## 音樂資料庫資料模型
<a name="workbench.SampleModels.MusicLibraryDataModel"></a>

此資料模型代表具有大量歌曲選集的音樂資料庫，能以近乎即時的方式展示下載次數最多的歌曲。

此資料模型有助於以下存取模式：
+ 擷取一首歌曲記錄，您可透過名為 `Songs` 的表格加快完成此動作。
+ 擷取特定的下載記錄或歌曲的所有下載記錄，您可透過名為 `Songs` 的表格加快完成此動作。
+ 擷取歌曲特定的每月下載次數記錄，您可透過名為 `Song` 的表格加快完成此動作。
+ 擷取歌曲的所有記錄 (包括歌曲記錄、下載記錄和每月下載次數記錄)，您可透過名為 `Songs` 的表格加快完成此動作。
+ 搜尋最多人下載的歌曲，您可透過名為 `DownloadsByMonth` 的表格的全域次要索引加快完成此動作。

## 滑雪渡假村資料模型
<a name="workbench.SampleModels.SkiResortDataModel"></a>

此資料模型代表一個滑雪渡假村，其中有每部滑雪纜車每天收集到的大量資料集合。

此資料模型有助於以下存取模式：
+ 擷取指定滑雪纜車或整體渡假村的所有資料 (動態和靜態)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 在特定日期擷取滑雪纜車或整體渡假村的所有動態資料 (包括特別的纜車乘客，積雪覆蓋率、雪崩危險性和纜車狀態)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 擷取特定滑雪纜車的所有靜態資料 (包括纜車是否是給有經驗的乘客使用、纜車升高的垂直高度 (英尺)、纜車乘坐時間)，您可透過名為 `SkiLifts` 的表格加快完成此動作。
+ 擷取對特定滑雪纜車或整體渡假村記錄的資料日期 (依特別的乘客總數排序)，您可透過名為 `SkiLiftsByRiders` 的 SkiLifts 表格的全域次要索引加快完成此動作。

## 信用卡優惠資料模型
<a name="workbench.SampleModels.CreditCardOffersDataModel"></a>

此資料模型由信用卡優惠應用程式使用。

信用卡供應商會不時提供優惠。這些優惠包括不收費的餘額轉移、提高信用額度、降低利率、現金回饋和航空公司里程數。客戶接受或拒絕這些優惠後，相應的優惠狀態會隨之更新。

此資料模型有助於以下存取模式：
+ 使用 `AccountId` 擷取帳戶記錄，您可透過主表格加快完成此動作。
+ 擷取有少量預估項目的所有帳戶，您可透過次要索引 `AccountIndex` 加快完成此動作。
+ 使用 `AccountId` 擷取帳戶和所有與這些帳戶相關的優惠，您可透過主表格加快完成此動作。
+ 使用 `AccountId` 和 `OfferId` 擷取與這些帳戶相關的帳戶和特定優惠記錄，您可透過主表格加快完成此動作。
+ 使用 `AccountId`、`OfferType` 和 `Status` 擷取所有與帳戶相關且為 `OfferType` 特定的所有 `ACCEPTED/DECLINED` 優惠記錄，您可透過次要索引 `GSI1` 加快完成此動作。
+ 使用 `OfferId` 擷取優惠和相關的優惠項目記錄，您可透過主表格加快完成此動作。

## 書籤資料模型
<a name="workbench.SampleModels.BookmarksDataModel"></a>

這個資料模型可供客戶用來存放書籤。

一個客戶可以有很多個書籤，且一個書籤可以屬於許多客戶。這個資料模型代表多對多的關係。

此資料模型有助於以下存取模式：
+ `customerId` 的單一查詢現在可以傳回客戶資料以及書籤。
+ 查詢 `ByEmail` 索引會透過電子郵件地址傳回客戶資料。請注意，此索引不會擷取書籤。
+ 查詢 `ByUrl` 索引會透過 URL 取得書籤資料。請注意，我們有 CustomerID 作為索引的排序金鑰，因為相同的 URL 可以被多個客戶加入書籤。
+ 查詢 `ByCustomerFolder` 索引會依資料夾取得每位客戶的書籤。

# NoSQL Workbench 的版本歷史記錄
<a name="WorkbenchDocumentHistory"></a>

下表說明在各版 *NoSQL Workbench* 用戶端工具的重大變更。


****  

| 版本 | 變更 | 描述 | Date | 
| --- | --- | --- | --- | 
| 3.20.0 | 適用於 DynamoDB 的新資料模型器 | DynamoDB 的資料模型器具有更新的使用者體驗。DynamoDB 的資料模型器現在支援存取模式。 | 2026 年 2 月 16 日 | 
| 3.13.5 | 目前資料表預設的容量模式為隨需模式 | 您使用預設設定建立資料表時，DynamoDB 建立的資料表會使用隨需容量模式而非佈建容量模式。 | 2025 年 2 月 24 日 | 
| 3.13.0 | NoSQL Workbench 操作建置器改進 | NoSQL Workbench 現在包含對深色模式的原生支援。改善操作建置器中的資料表和項目操作。項目結果和操作建置器請求資訊以 JSON 格式提供。 | 2024 年 4 月 24 日 | 
| 3.12.0 | 使用 NoSQL Workbench 複製資料表並傳回消耗的容量 | 您現在可以在 DynamoDB 本機版和 DynamoDB Web 服務帳戶之間，或在多個 DynamoDB Web 服務帳戶之間複製資料表，以加快開發迭代的速度。使用 Operations Builder (操作建置器) 執行操作後，檢視已使用的 RCU 或 WCU。我們已修正從 CSV 檔案匯入時的覆寫資料問題。 | 2024 年 2 月 26 日  | 
| 3.11.0 |  DynamoDB 本機版改善  |  您現在可於啟動內建 DynamoDB 本機版執行個體時指定連接埠。NoSQL Workbench 現在可以在沒有管理員權限的情況下安裝在 Windows 上。我們已更新資料模型範本。  |  2024 年 1 月 17 日  | 
| 3.10.0 |  適用於 Apple 晶片的原生支援  |   NoSQL Workbench 現在可原生支援搭載 Apple 晶片的 Mac。您現在可以為 `Number` 類型的屬性，設定範例資料產生格式。  |  2023 年 12 月 5 日  | 
| 3.9.0 |  資料模型建立工具改進功能  |   視覺化工具現在可支援將資料模型提交至 DynamoDB 本機版，並且可選擇覆寫現有資料表。  |  2023 年 11 月 3 日  | 
| 3.8.0 |  產生範例資料  |  NoSQL Workbench 現在支援為您的 DynamoDB 資料模型產生範例資料。  |  2023 年 9 月 25 日  | 
| 3.6.0 |  操作建置器的改善項目  |  操作建置器的連線管理改善項目。資料模型建立工具中的屬性名稱現在無需刪除資料即可變更。其他錯誤修復。  |  2023 年 4 月 11 日  | 
| 3.5.0 |  支援新 AWS 區域  |  NoSQL Workbench 現在支援 ap-south-2、ap-southeast-3、ap-southeast-4、eu-central-2、eu-south-2、me-central-1 和 me-west-1 區域。  |  2023 年 2 月 23 日  | 
| 3.4.0 |  DynamoDB 本機版的支援  |  NoSQL Workbench 現在支援 DynamoDB 本機版做為安裝程序的一部分。  |  2022 年 12 月 6 日  | 
| 3.3.0 |  控制平面操作支援  |  操作建置器現在支援控制平面操作。  |  2022 年 6 月 1 日  | 
| 3.2.0 |  CSV 匯入和匯出  |  您現在可以從視覺化檢視工具中的 CSV 檔案匯入範例資料，也可以將作業產生器查詢的結果匯出至 CSV 檔案。  |  2021 年 10 月 11 日  | 
| 3.1.0 |  儲存操作  |  NoSQL Workbench 中的操作建置器現在支援儲存操作以供日後使用。  |  2021 年 7 月 12 日  | 
| 3.0.0 | 容量設定和 CloudFormation 匯入/匯出 | Amazon DynamoDB 專用 NoSQL Workbench 現在不僅支援為資料表指定讀取/寫入容量模式，還能以 CloudFormation 格式匯入和匯出資料模型。 | 2021 年 4 月 21 日 | 
| 2.2.0 | PartiQL 支援 | Amazon DynamoDB 專用 NoSQL Workbench 新增支援建置 DynamoDB 的 PartiQL 陳述式。 | 2020 年 12 月 4 日 | 
| 1.1.0 | 支援 Linux。 | Linux Ubuntu、Fedora 與 Debian 均支援 Amazon DynamoDB 專用 NoSQL Workbench。 | 2020 年 5 月 4 日 | 
| 1.0.0 | Amazon DynamoDB 專用 NoSQL Workbench：GA 版。 | Amazon DynamoDB 專用 NoSQL Workbench 現已正式推出。 | 2020 年 3 月 2 日 | 
| 0.4.1 | 支援 IAM 角色和臨時安全憑證。 | Amazon DynamoDB 專用 NoSQL Workbench 新增對 AWS Identity and Access Management (IAM) 角色和臨時安全憑證的支援。 | 2019 年 12 月 19 日 | 
| 0.3.1 | 支援 [DynamoDB 本機版 (可下載版本)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html)。 | NoSQL Workbench 現在支援連接至 [DynamoDB 本機版 (可下載版本)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html)，以設計、建立、查詢和管理 DynamoDB 資料表。 | 2019 年 11 月 8 日 | 
| 0.2.1 | 已發行 NoSQL Workbench 預覽。 | 這是 DynamoDB 專用 NoSQL Workbench 的初始版本。使用 NoSQL Workbench 設計、建立、查詢及管理 DynamoDB 資料表。 | 2019 年 9 月 16 日 | 