SCHEMATA_LINKS 檢視

INFORMATION_SCHEMA.SCHEMATA_LINKS 檢視畫面會為每個已連結的資料集包含一列。連結資料集會連結至目前使用者可存取的專案中,共用資料集。

必要權限

如要查詢 INFORMATION_SCHEMA.SCHEMATA_LINKS 檢視畫面,您必須具備專案層級的 bigquery.datasets.get 身分與存取權管理 (IAM) 權限。

以下每個預先定義的 IAM 角色都包含查詢 INFORMATION_SCHEMA.SCHEMATA_LINKS 檢視畫面所需的權限:

  • roles/bigquery.admin
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.dataViewer

如要進一步瞭解 BigQuery 權限,請參閱「使用身分與存取權管理功能控管存取權」。

結構定義

INFORMATION_SCHEMA.SCHEMATA_LINKS 檢視表具有下列結構定義:

資料欄名稱 資料類型
CATALOG_NAME STRING 包含來源資料集的專案名稱。
SCHEMA_NAME STRING 來源資料集的名稱。資料集名稱也稱為 datasetId
LINKED_SCHEMA_CATALOG_NUMBER STRING 包含已連結資料集的專案專案編號。
LINKED_SCHEMA_CATALOG_NAME STRING 包含已連結資料集的專案名稱。
LINKED_SCHEMA_NAME STRING 連結資料集的名稱。資料集名稱也稱為 datasetId
LINKED_SCHEMA_CREATION_TIME TIMESTAMP 建立連結資料集的時間。
LINKED_SCHEMA_ORG_DISPLAY_NAME STRING 建立連結資料集的機構顯示名稱。

範圍和語法

對這個檢視表執行的查詢必須包含區域限定詞。如果未指定區域限定詞,系統會從美國區域擷取中繼資料。下表說明此檢視區域的範圍:

檢視表名稱 資源範圍 區域範圍
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA_LINKS 專案層級 美國區域
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA_LINKS 專案層級 REGION
替換下列內容:
  • 選用:PROJECT_ID: Google Cloud 專案的 ID。如果未指定,系統會使用預設專案。
  • REGION:任一資料集區域名稱。例如:`region-us`

範例

本節列出查詢 INFORMATION_SCHEMA.SCHEMATA_LINKS 檢視畫面的範例。

範例:列出與另一個專案相關聯的所有資料集

以下範例會列出 eu 區域中名為 otherproject 的另一個專案中,所有已連結的資料集:

SELECT * FROM `otherproject`.`region-eu`.INFORMATION_SCHEMA.SCHEMATA_LINKS;

輸出結果大致如下。系統會省略某些資料欄,以便簡化輸出結果。

+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+
|  catalog_name  | schema_name | linked_schema_catalog_name | linked_schema_catalog_number | linked_schema_name | linked_schema_org_display_name |
+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+
| otherproject   | myschema1   | subscriptionproject1       |                 974999999291 | subscriptionld1    | subscriptionorg2               |
| otherproject   | myschema2   | subscriptionproject2       |                 974999999292 | subscriptionld2    | subscriptionorg2               |
| otherproject   | myschema3   | subscriptionproject3       |                 974999999293 | subscriptionld3    | subscriptionorg3               |
+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+

範例:依共用資料集列出所有已連結的資料集

以下範例會列出 US 多地區中名為 sharedataset 的共用資料集,並根據該資料集列出所有已連結的資料集:

SELECT * FROM INFORMATION_SCHEMA.SCHEMATA_LINKS WHERE schema_name = 'sharedataset';

輸出結果大致如下。系統會省略某些資料欄,以便簡化輸出結果。

+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+
|  catalog_name  | schema_name | linked_schema_catalog_name | linked_schema_catalog_number | linked_schema_name | linked_schema_org_display_name |
+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+
| myproject      | sharedataset| subscriptionproject1       |                 674999999291 | subscriptionld1    | subscriptionorg1               |
| myproject      | sharedataset| subscriptionproject2       |                 774999999292 | subscriptionld2    | subscriptionorg3               |
+----------------+-------------+----------------------------+------------------------------+--------------------+--------------------------------+