更新資料集屬性

本文說明如何在 BigQuery 中更新資料集屬性。建立資料集之後,您可以更新下列資料集屬性:

必要權限

您至少須具備 bigquery.datasets.updatebigquery.datasets.get 權限,才能更新資料集屬性。以下是具備 bigquery.datasets.updatebigquery.datasets.get 權限的預先定義 Cloud IAM 角色:

  • bigquery.dataOwner
  • bigquery.admin

另外,具備 bigquery.datasets.create 權限的使用者會在建立資料集時獲得 bigquery.dataOwner 存取權限。 bigquery.dataOwner 存取權限可讓使用者在自己建立的資料集中更新屬性。

如要進一步瞭解 BigQuery 中的 Cloud IAM 角色和權限,請參閱存取權控管一文。

更新資料集說明

您可以透過以下方式更新資料集的說明:

  • 使用 GCP Console 或傳統 BigQuery 網頁版 UI
  • 使用 bq update CLI 指令
  • 呼叫 datasets.patch API 方法
  • 使用用戶端程式庫

如要更新資料集的說明,請按照下列指示操作:

主控台

  1. 在「Resources」(資源) 窗格中選取資料集。

  2. 在「Details」(詳細資料) 頁面中,按一下「Description」(說明) 旁的鉛筆圖示來編輯說明文字。

    查詢設定

  3. 在對話方塊中輸入說明或編輯現有的說明。按一下 [Update] (更新) 即可儲存新的說明文字。

傳統版 UI

  1. 在導覽窗格中選取資料集。

  2. 如果資料集不含任何說明,請前往「Dataset Details」(資料集詳細資料) 頁面的「Description」(說明) 專區,並點選 [Describe this dataset] (說明這個資料集) 來開啟說明方塊。如果資料集含有說明,則請按一下現有的說明文字。

  3. 在方塊中輸入說明或編輯現有說明內容。在方塊外部按一下後,系統就會儲存該文字。

    資料集說明

CLI

發出 bq update 指令並搭配使用 --description 標記。如要更新非預設專案中的資料集,請使用下列格式將專案 ID 新增至資料集名稱:project_id:dataset

bq update \
--description "string" \
project_id:dataset

其中:

  • 「string」是描述資料集的文字 (前後均須加上引號)。
  • 「project_id」是您的專案 ID。
  • 「dataset」是您要更新的資料集名稱。

範例:

輸入下列指令,將 mydataset 的說明變更為「mydataset 的說明」。mydataset 位於預設專案中。

bq update --description "Description of mydataset" mydataset

輸入下列指令,將 mydataset 的說明變更為「mydataset 的說明」。資料集位於 myotherproject,而非預設的專案中。

bq update \
--description "Description of mydataset" \
myotherproject:mydataset

API

呼叫 datasets.patch 並更新資料集資源中的 description 屬性。datasets.update 方法會取代整個資料集的資源,因此建議使用 datasets.patch 方法。

Go

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Go 相關設定指示操作。詳情請參閱 BigQuery Go API 參考說明文件

ds := client.Dataset(datasetID)
meta, err := ds.Metadata(ctx)
if err != nil {
	return err
}
update := bigquery.DatasetMetadataToUpdate{
	Description: "Updated Description.",
}
if _, err = ds.Update(ctx, update, meta.ETag); err != nil {
	return err
}

Java

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Java 相關設定指示操作。詳情請參閱 BigQuery Java API 參考說明文件

建立 Dataset.Builder 執行個體 (使用 Dataset.toBuilder() 方法根據現有的 Dataset 執行個體建立)。設定資料集製作工具物件。使用 Dataset.Builder.build() 方法建立更新完成的資料集,然後呼叫 Dataset.update() 方法,將更新內容傳送至 API。
Dataset oldDataset = bigquery.getDataset(datasetName);
DatasetInfo datasetInfo = oldDataset.toBuilder().setDescription(newDescription).build();
Dataset newDataset = bigquery.update(datasetInfo);

Python

在試行此示例之前,請至 BigQuery 快速入門導覽課程:使用用戶端程式庫,按照 Python 設定說明進行操作。詳情請參閱 BigQuery Python API 參考說明文件

設定 Dataset.description 屬性並呼叫 Client.update_dataset(),將更新內容傳送至 API。
from google.cloud import bigquery

# TODO(developer): Construct a BigQuery client object.
# client = bigquery.Client()

# TODO(developer): Set dataset_id to the ID of the dataset to fetch.
# dataset_id = 'your-project.your_dataset'

dataset = client.get_dataset(dataset_id)
dataset.description = "Updated description."
dataset = client.update_dataset(dataset, ["description"])

full_dataset_id = "{}.{}".format(dataset.project, dataset.dataset_id)
print(
    "Updated dataset '{}' with description '{}'.".format(
        full_dataset_id, dataset.description
    )
)

更新預設的資料表到期時間

您可以透過以下方式更新資料集的預設資料表到期時間:

  • 使用 GCP Console 或傳統 BigQuery 網頁版 UI
  • 使用 bq update CLI 指令
  • 呼叫 datasets.patch API 方法
  • 使用用戶端程式庫

您可以設定資料集層級的預設資料表到期時間,也可以在建立資料表時設定資料表的到期時間。如果您在建立資料表時設定到期時間,系統將會忽略資料集的資料表預設到期時間。如果您未設定資料集層級的資料表預設到期時間,且未在建立資料表時設定資料表到期時間,則資料表永遠不會過期,屆時您必須手動刪除資料表。

您更新資料集的資料表預設到期時間設定時:

  • 如果您將值從 Never 變更為已定義的到期時間,則除非在建立資料表時已為其設定了到期時間,否則資料集中已存在的任何資料表將不會過期。
  • 如果您要變更資料表預設到期時間的值,則任何已存在的資料表都將根據原始的資料表到期時間設定過期。 除非您在建立資料表時已為其指定不同的資料表到期時間,否則在資料集中建立的任何新資料表都會套用新的資料表到期時間設定。

資料表預設到期時間的值會依該值的設定位置而有不同的表示方式。請使用可為您提供適當精細層級的方法:

  • 在 GCP Console 和傳統 BigQuery 網頁版 UI 中,到期時間會以天為單位表示。
  • 在指令列工具中,到期時間會以秒為單位表示。
  • 在 API 中,到期時間會以毫秒為單位表示。

如何更新資料集的預設到期時間:

主控台

  1. 在「Resources」(資源) 窗格中選取資料集。

  2. 在「Details」(詳細資料) 頁面中,按一下「Dataset info」(資料集資訊) 旁的鉛筆圖示來編輯說明。

  3. 在「Dataset info」(資料集資訊) 對話方塊的「Default table expiration」(預設資料表到期時間) 區段中,輸入「Number of days after table creation」(資料表建立後的天數) 的值。

  4. 按一下 [Save] (儲存)

傳統版 UI

  1. 在導覽窗格中選取資料集。

  2. 在「Dataset Details」(資料集詳細資料) 頁面的「Details」(詳細資料) 區段中,在「Default Table Expiration」(預設資料表到期時間) 的右側按一下 [Edit] (編輯)

    資料表到期時間

  3. 在「Update Expiration」(更新到期時間) 對話方塊中,針對「Data expiration」(資料到期時間) 按一下 [In] (到期時間),然後以天為單位輸入到期時間。預設值為「Never」(永不)。

CLI

如要更新資料集中新建立資料表的預設到期時間,請輸入 bq update 指令並搭配使用 --default_table_expiration 標記。如要更新非預設專案中的資料集,請使用下列格式將專案 ID 新增至資料集名稱:project_id:dataset

bq update \
--default_table_expiration integer \
project_id:dataset

其中:

  • 「integer」是新建立資料表的預設生命週期長度 (以秒為單位)。最小值是 3,600 秒 (1 小時)。到期時間為目前世界標準時間加整數值。指定 0 即可移除現有的到期時間。在資料集中建立的任何資料表都會在建立後滿「integer」秒時遭到刪除。如果您在建立資料表時未設定資料表到期時間,系統就會套用這個值。
  • 「project_id」是您的專案 ID。
  • 「dataset」是您要更新的資料集名稱。

範例:

輸入下列指令,將在 mydataset 中建立的新資料表預設到期時間設為距目前時間 2 小時 (7,200 秒)。該資料集位於預設專案。

bq update --default_table_expiration 7200 mydataset

輸入下列指令,將在 mydataset 中建立的新資料表預設到期時間設為距目前時間 2 小時 (7,200 秒)。該資料集位於 myotherproject,而非預設專案。

bq update --default_table_expiration 7200 myotherproject:mydataset

API

呼叫 datasets.patch 並更新資料集資源中的 defaultTableExpirationMs 屬性。API 中的到期時間以毫秒為單位。datasets.update 方法會取代整個資料集的資源,因此建議您使用 datasets.patch 方法。

Go

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Go 相關設定指示操作。詳情請參閱 BigQuery Go API 參考說明文件

ds := client.Dataset(datasetID)
meta, err := ds.Metadata(ctx)
if err != nil {
	return err
}
update := bigquery.DatasetMetadataToUpdate{
	DefaultTableExpiration: 24 * time.Hour,
}
if _, err := client.Dataset(datasetID).Update(ctx, update, meta.ETag); err != nil {
	return err
}

Java

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Java 相關設定指示操作。詳情請參閱 BigQuery Java API 參考說明文件

建立 Dataset.Builder 執行個體 (使用 Dataset.toBuilder() 方法根據現有的 Dataset 執行個體建立)。設定資料集製作工具物件。使用 Dataset.Builder.build() 方法建立更新完成的資料集,並呼叫 Dataset.update() 方法,將更新內容傳送至 API。

使用 Dataset.Builder.setDefaultTableLifetime() 方法設定預設到期時間。

Long beforeExpiration = dataset.getDefaultTableLifetime();

Long oneDayMilliseconds = 24 * 60 * 60 * 1000L;
DatasetInfo.Builder builder = dataset.toBuilder();
builder.setDefaultTableLifetime(oneDayMilliseconds);
bigquery.update(builder.build());  // API request.

Python

在試行此示例之前,請至 BigQuery 快速入門導覽課程:使用用戶端程式庫,按照 Python 設定說明進行操作。詳情請參閱 BigQuery Python API 參考說明文件

設定 Dataset.default_table_expiration_ms 屬性並呼叫 Client.update_dataset(),將更新內容傳送至 API。
from google.cloud import bigquery

# TODO(developer): Construct a BigQuery client object.
# client = bigquery.Client()

# TODO(developer): Set dataset_id to the ID of the dataset to fetch.
# dataset_id = 'your-project.your_dataset'

dataset = client.get_dataset(dataset_id)
dataset.default_table_expiration_ms = 24 * 60 * 60 * 1000  # in milliseconds

dataset = client.update_dataset(
    dataset, ["default_table_expiration_ms"]
)  # API request

full_dataset_id = "{}.{}".format(dataset.project, dataset.dataset_id)
print(
    "Updated dataset {} with new expiration {}".format(
        full_dataset_id, dataset.default_table_expiration_ms
    )
)

更新預設的分區到期時間

您可以透過以下方式更新資料集的預設分區到期時間:

  • 使用 bq update CLI 指令
  • 呼叫 datasets.patch API 方法
  • 使用用戶端程式庫

GCP Console 或傳統 BigQuery 網頁版 UI 目前不支援設定或更新資料集的預設分區到期時間。

您可以設定資料集層級的預設分區到期時間 (會影響所有新建的分區資料表),也可以在建立分區資料表時設定個別資料表的分區到期時間。如果您同時在資料集層級設定了預設分區到期時間和預設資料表到期時間,新建立的分區資料表只會套用分區到期時間。也就是說,如果您同時了設定這兩個選項,預設分區到期時間會覆寫預設資料表到期時間。

如果您在建立分區資料表時即設定了分區到期時間,該值會覆寫資料集層級的預設分區到期時間 (如有)。

如果您未設定資料集層級的預設分區到期時間,也未在建立資料表時設定分區到期時間,則分區永遠不會過期,直到您手動刪除分區為止。

當您設定資料集的預設分區到期時間時,到期時間會套用至在資料集中建立的所有分區資料表中的所有分區。當您設定資料表的分區到期時間時,到期時間會套用至在指定資料表中建立的所有分區。目前,您無法將不同的到期時間套用至相同資料表中的不同分區。

您在更新資料集的預設分區到期時間設定時:

  • 如果您將值從「Never」(永不) 變更為已定義的到期時間,則除非您在建立資料表時已為其設定分區到期時間,否則分區資料集中的任何既有分區都不會過期。
  • 如果您變更了預設分區到期時間的值,現有分區資料表中的任何分區是否到期都將視原始的預設分區到期時間而定。除非您在建立資料表時已為其指定不同的分區到期時間,否則在資料集中建立的任何新分區資料表都會套用新的預設分區到期時間設定。

預設分區到期時間的值會依該值的設定位置而有不同的表示方式。請使用可為您提供適當精細層級的方法:

  • 在指令列工具中,到期時間會以秒為單位表示。
  • 在 API 中,到期時間會以毫秒為單位表示。

如何更新資料集的預設到期時間:

主控台

GCP Console 目前不支援更新資料集的預設分區到期時間。

傳統版 UI

BigQuery 網頁版 UI 目前不支援更新資料集的預設分區到期時間。

CLI

如要更新資料集的預設到期時間,請輸入 bq update 指令並搭配使用 --default_partition_expiration 標記。如要更新非預設專案中的資料集,請使用下列格式將專案 ID 新增至資料集名稱:project_id:dataset

bq update \
--default_partition_expiration integer \
project_id:dataset

其中:

  • 「integer」是新建立資料表的預設生命週期長度 (以秒為單位)。這個標記沒有最小值。指定 0 可移除現有的到期時間。新建立分區資料表中的任何分區都會在分區的世界標準時間日期起 [INTEGER] 秒後刪除。如果您在建立資料表時未設定資料表到期時間,系統就會套用這個值。
  • 「project_id」是您的專案 ID。
  • 「dataset」是您要更新的資料集名稱。

範例:

輸入下列指令,將在 mydataset 中建立的新分區資料表的預設分區到期時間設定為 26 小時 (93,600 秒)。該資料集位於預設專案中。

bq update --default_partition_expiration 93600 mydataset

輸入下列指令,將在 mydataset 中建立的新分區資料表的預設分區到期時間設定為 26 小時 (93,600 秒)。資料集位於 myotherproject 而非預設專案中。

bq update --default_partition_expiration 93600 myotherproject:mydataset

API

呼叫 datasets.patch 並更新資料集資源中的 defaultPartitionExpirationMs 屬性。到期時間會以毫秒為單位表示。由於 datasets.update 方法會取代整個資料集資源,因此建議使用 datasets.patch 方法。

更新資料集存取權控管

更新資料集存取權控管的程序與指派存取權控管給資料集的程序非常類似。透過 GCP Console、傳統 BigQuery 網頁版 UI 或指令列工具建立資料集時,您無法套用存取權控管設定。您必須先建立資料集,然後再更新資料集的存取權控管設定。API 可讓您透過呼叫 datasets.patch 方法更新資料集存取權控管設定。

您在更新資料集的存取權控管設定時,可以修改下列實體的存取權限:

  • Google 帳戶電子郵件:將資料集的存取權限授予個別 Google 帳戶
  • Google 群組:將資料集存取權限授予 Google 群組中所有成員
  • Google Apps 網域:將資料集的存取權限授予特定 Google 網域中的所有使用者和群組
  • 服務帳戶:將資料集的存取權限授予服務帳戶
  • 任何人:輸入「allUsers」即可將存取權限授予一般大眾
  • 所有 Google 帳戶:輸入「allAuthenticatedUsers」,即可將存取權限授予任何已登入 Google 帳戶的使用者
  • 已授權的檢視表:授予資料集的已授權檢視表存取權限

如要更新資料集的存取權控管設定,請按照下列指示操作:

主控台

  1. 在導覽窗格中的「Resources」(資源) 專區中按一下資料集。

  2. 按一下 [Share Dataset] (分享資料集)

  3. 如要在「Share Dataset」(分享資料集) 對話方塊中刪除現有項目,請展開所需項目並按一下「刪除」圖示 (垃圾桶)。

  4. 如要在「Share Dataset」(分享資料集) 對話方塊中新增項目:

    1. 在「Add members」(新增成員) 方塊中輸入實體。

    2. 從「Select a role」(選取角色) 的清單中選取適當的 Cloud IAM 角色。如要進一步瞭解指派給每個預先定義 BigQuery 角色的權限,請參閱存取權控管頁面。

    3. 按一下 [Add] (新增)。

  5. 如要新增已授權的檢視表,請按一下 [Authorized View] (已授權檢視表) 分頁標籤,然後輸入專案、資料集和檢視,然後按一下 [Add] (新增)。

  6. 新增或刪除存取權控管設定之後,請按一下 [Done] (完成)

傳統版 UI

  1. 按一下資料集右側的下拉式箭頭,然後選擇 [Share Dataset] (分享資料集)。

  2. 如要在「Share Dataset」(分享資料集) 對話方塊中修改現有的項目:

    • 按一下實體右側的 X 圖示來刪除現有項目。
    • 如要變更實體的權限,請按一下權限按鈕,然後選擇適當的存取層級:Is owner (OWNER)、Can edit (WRITER) 或 Can view (READER)。如要進一步瞭解資料集層級角色,請參閱原始角色與權限一文。
  3. 如要在「Share Dataset」(分享資料集) 對話方塊中新增項目:

    1. 按一下「Add People」(新增成員) 欄位左側的下拉式選單,然後選擇適當的選項。

    2. 在文字方塊中輸入值。舉例來說,如果您選擇 [User by e-mail] (依電子郵件指定的使用者),請輸入使用者的電子郵件地址。

    3. 在「Add People」(新增成員) 欄位的右側,按一下 [Can view] (可以檢視),然後從清單中選擇適當的角色。

      將使用者新增至資料集

      • 「Can view」(可以檢視) (READER) 會授予資料集 bigquery.dataViewer 存取權限。
      • 「Can edit」(可以編輯) (WRITER) 會授予資料集 bigquery.dataEditor 存取權限。
      • 「Is owner」(是擁有者) (OWNER) 會授予資料集 bigquery.dataOwner 的存取權限。
    4. 按一下 [Add] (新增)。

  4. 新增、刪除或修改存取權控管設定之後,請按一下 [Save changes] (儲存變更)

  5. 如要驗證您的存取權控管設定,請按一下資料集右側的下拉式箭頭,然後選擇 [Share Dataset] (分享資料集)。接著,您就能在「Share Dataset」(分享資料集) 對話方塊中確認設定。

CLI

  1. 使用 show 指令將現有的資料集資訊 (包括存取權控管設定) 寫入 JSON 檔案。如果資料集位於非預設專案,請使用下列格式將專案 ID 新增至資料集名稱:project_id:dataset

    bq show \
    --format=prettyjson \
    project_id:dataset > path_to_file
    

    其中:

    • 「project_id」是您的專案 ID。
    • 「dataset」是資料集的名稱。
    • 「path_to_file」是本機中 JSON 檔案的路徑。

    範例:

    輸入下列指令,將 mydataset 的存取權控管設定寫入 JSON 檔案。mydataset 位於預設專案。

    bq show --format=prettyjson mydataset > /tmp/mydataset.json
    

    輸入下列指令,將 mydataset 的存取權控管設定寫入 JSON 檔案。mydataset 位於 myotherproject

    bq show --format=prettyjson \
    myotherproject:mydataset > /tmp/mydataset.json
    
  2. 變更 JSON 檔案的 "access" 部分。您可以新增或移除任何 specialGroup 項目:projectOwnersprojectWritersprojectReadersallAuthenticatedUsers。另外,您也可以新增、移除或修改下列任一項目:userByEmailgroupByEmaildomain

    舉例來說,資料集 JSON 檔案的存取權部分會如下所示:

    {
     "access": [
      {
       "role": "READER",
       "specialGroup": "projectReaders"
      },
      {
       "role": "WRITER",
       "specialGroup": "projectWriters"
      },
      {
       "role": "OWNER",
       "specialGroup": "projectOwners"
      }
      {
       "role": "READER",
       "specialGroup": "allAuthenticatedUsers"
      }
      {
       "role": "READER",
       "domain": "[DOMAIN_NAME]"
      }
      {
       "role": "WRITER",
       "userByEmail": "[USER_EMAIL]"
      }
      {
       "role": "READER",
       "groupByEmail": "[GROUP_EMAIL]"
      }
     ],
    }
    

  3. 編輯完成之後,請使用 update 指令和 --source 標記加入 JSON 檔案。如果資料集位於非預設專案,請使用下列格式將專案 ID 新增至資料集名稱:project_id:dataset

    bq update --source path_to_file project_id:dataset
    

    其中:

    • 「path_to_file」是本機中 JSON 檔案的路徑。
    • 「project_id」是您的專案 ID。
    • 「dataset」是資料集的名稱。

    範例:

    輸入下列指令,更新 mydataset 的存取權控管。mydataset 位於預設專案中。

    bq update --source /tmp/mydataset.json mydataset
    

    輸入下列指令來更新 mydataset 的存取權控管設定。mydataset 位於 myotherproject

    bq update --source /tmp/mydataset.json myotherproject:mydataset
    
  4. 如要驗證您的存取權控管設定變更,請再次輸入 show 指令,而不要將資訊寫入檔案。

    bq show --format=prettyjson dataset
    

    bq show --format=prettyjson project_id:dataset
    

API

呼叫 datasets.patch 並更新資料集資源中的 access 屬性。

datasets.update 方法會取代整個資料集的資源,因此建議您使用 datasets.patch 方法來更新存取權控管設定。

Go

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Go 相關設定指示操作。詳情請參閱 BigQuery Go API 參考說明文件

ds := client.Dataset(datasetID)
meta, err := ds.Metadata(ctx)
if err != nil {
	return err
}
// Append a new access control entry to the existing access list.
update := bigquery.DatasetMetadataToUpdate{
	Access: append(meta.Access, &bigquery.AccessEntry{
		Role:       bigquery.ReaderRole,
		EntityType: bigquery.UserEmailEntity,
		Entity:     "sample.bigquery.dev@gmail.com"},
	),
}

// Leverage the ETag for the update to assert there's been no modifications to the
// dataset since the metadata was originally read.
if _, err := ds.Update(ctx, update, meta.ETag); err != nil {
	return err
}

Java

在試行這個範例之前,請按照 BigQuery 快速入門導覽課程:使用用戶端程式庫中的 Java 相關設定指示操作。詳情請參閱 BigQuery Java API 參考說明文件

建立 Dataset.Builder 執行個體 (使用 Dataset.toBuilder() 方法根據現有的 Dataset 執行個體建立)。設定資料集製作工具物件。使用 Dataset.Builder.build() 方法建立更新完成的資料集,並呼叫 Dataset.update() 方法,將更新內容傳送至 API。

使用 Dataset.Builder.setAcl() 方法調整存取權控管設定。

List<Acl> beforeAcls = dataset.getAcl();

// Make a copy of the ACLs so that they can be modified.
ArrayList<Acl> acls = new ArrayList<>(beforeAcls);
acls.add(Acl.of(new Acl.User("sample.bigquery.dev@gmail.com"), Acl.Role.READER));
DatasetInfo.Builder builder = dataset.toBuilder();
builder.setAcl(acls);

bigquery.update(builder.build());  // API request.

Python

在試行此示例之前,請至 BigQuery 快速入門導覽課程:使用用戶端程式庫,按照 Python 設定說明進行操作。詳情請參閱 BigQuery Python API 參考說明文件

利用資料集的存取權控管設定 dataset.access_entries 屬性,然後呼叫 client.update_dataset() 函式來更新屬性。
from google.cloud import bigquery

# TODO(developer): Construct a BigQuery client object.
# client = bigquery.Client()

# TODO(developer): Set dataset_id to the ID of the dataset to fetch.
# dataset_id = 'your-project.your_dataset'

dataset = client.get_dataset(dataset_id)

entry = bigquery.AccessEntry(
    role="READER",
    entity_type="userByEmail",
    entity_id="sample.bigquery.dev@gmail.com",
)

entries = list(dataset.access_entries)
entries.append(entry)
dataset.access_entries = entries

dataset = client.update_dataset(dataset, ["access_entries"])  # API request

full_dataset_id = "{}.{}".format(dataset.project, dataset.dataset_id)
print(
    "Updated dataset '{}' with modified user permissions.".format(full_dataset_id)
)

後續步驟

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
需要協助嗎?請前往我們的支援網頁