DBMS_CATALOG 摘要

本節涵蓋 Oracle Autonomous AI Database 提供的 DBMS_CATALOG 子程式。

子程式分類為下列功能區域。

目錄掛載與卸載

子程式 描述

MOUNT_DATA_CATALOG 程序

此程序會掛載資料目錄,例如 AWS GLUE 或 OCI 資料目錄。

MOUNT_DB_LINK 程序

此程序會根據資料庫連結掛載目錄。

MOUNT_ICEBERG 程序

此程序會掛載具有特定組態的 Apache Iceberg 目錄。

MOUNT_SHARE 程序

此程序會依據共用來掛載單一目錄。

MOUNT_SHARES 程序

此程序會從共用提供者掛載多個目錄,以支援不同的輸入類型。

MOUNT_VIRTUAL_CATALOG 程序

此程序會建立並掛載新的虛擬目錄。

UNMOUNT 程序

此程序會卸載現有的外部目錄。

型錄館別管理

子程式 描述

GET_CATALOG_PROPERTY 程序

GET_CATALOG_PROPERTY_CLOB 程序

這些程序會擷取目錄的屬性值。

UPDATE_CATALOG_PROPERTY 程序

UPDATE_CATALOG_PROPERTY_CLOB 程序

這些程序會更新目錄的屬性值。

GET_COLUMN_PROPERTY 函數

GET_COLUMN_PROPERTY_CLOB 函數

這些函數會擷取 VARCHAR2 或 CLOB 格式之特定資料欄的特性值。

UPDATE_COLUMN_PROPERTY 程序

UPDATE_COLUMN_PROPERTY_CLOB 程序

這些程序會使用發送更新至來源的選項來更新特定資料欄的特性值。

GET_SCHEMA_PROPERTY 程序

GET_SCHEMA_PROPERTY_CLOB 程序

這些程序會擷取綱要特性值。

UPDATE_SCHEMA_PROPERTY 程序

UPDATE_SCHEMA_PROPERTY_CLOB 程序

這些程序會更新綱要特性值。

GET_TABLE_PROPERTY 程序

GET_TABLE_PROPERTY_CLOB 程序

這些程序會擷取表格屬性值。

UPDATE_TABLE_PROPERTY 程序

UPDATE_TABLE_PROPERTY_CLOB 程序

這些程序會更新表格屬性值。

GET_CLOUD_STORAGE_LINK_PROPERTY 函數

GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB 函數

這些函數會擷取 VARCHAR2 或 CLOB 格式之雲端儲存連結的特性值。

UPDATE_CLOUD_STORAGE_LINK_PROPERTY 程序

UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB 程序

這些程序會更新雲端儲存連結的特性值。

證明資料管理

子程式 描述

ADD_REQUIRED_CREDENTIAL 程序

此程序定義目錄的必要證明資料。

REMOVE_REQUIRED_CREDENTIAL 程序

此程序會從目錄移除必要的證明資料。

RENAME_REQUIRED_CREDENTIAL 程序

此程序會重新命名必要的證明資料。

GET_REQUIRED_CREDENTIAL_PROPERTY 程序

此程序會擷取必要證明資料的特性。

UPDATE_REQUIRED_CREDENTIAL_PROPERTY 程序

此程序會更新必要證明資料的特性。

GET_LOCAL_CREDENTIAL_MAP (超載) 程序

此程序會擷取必要證明資料與本機證明資料之間的對應,以超載各種輸出格式。

SET_LOCAL_CREDENTIAL 程序

此程序會指定必要證明資料的本機證明資料。

型錄實體管理

子程式 描述

CREATE_CLOUD_STORAGE_LINK 程序

DROP_CLOUD_STORAGE_LINK 程序

這些程序會管理目錄中的雲端儲存連結。

GET_CLOUD_STORAGE_LINKS 函數

此函數會擷取目錄中含有選擇性篩選之雲端儲存連結的描述資料。

CREATE_EXTERNAL_TABLE 程序

此程序會在目錄中建立外部表格。

CREATE_SCHEMA 程序

此程序會在目錄中建立新的架構,同時會在遠端目錄中建立 Apache Iceberg 架構。

GET_OBJECTS 程序

GET_SCHEMAS 程序

GET_TABLES 程序

此程序會使用管線函數擷取目錄內表格、綱要以及物件的描述資料。

DROP_SCHEMA 程序

DROP_TABLE 程序

此程序會從目錄刪除綱要和表格。

GET_COLUMNS 函數

此函數會擷取目錄中表格或視觀表之資料欄的描述資料。

GET_TABLE 程序

GET_TABLE 函數

此程序和函數會擷取記錄或 JSON 格式之特定表格的詳細資訊。

資料存取與快取

子程式 描述

GENERATE_TABLE_SELECT (超載) 程序

此程序會為邏輯表格建立 SELECT 敘述句,程序和函數都有超載。

OPEN_TABLE_CURSOR 程序

此程序會開啟游標以從邏輯表格傳回資料。

FLUSH_CATALOG_CACHE 程序

PREFILL_CATALOG_CACHE 程序

這些程序會管理目錄描述資料快取。

同步與共用

子程式 描述

CREATE_SYNCHRONIZED_SCHEMAS 程序

DROP_SYNCHRONIZED_SCHEMAS 程序

這些程序會管理同步化綱要與遠端目錄定義。

UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY 程序

此程序會更新已同步綱要的特性。

SYNCHRONIZE_SHARED_CATALOGS 程序

此程序會管理對應至無法使用之共用的目錄,並提供卸載或停用的選項。

CREATE_SYNCHRONIZED_VIEWS 程序

此程序會在目錄表上建立檢視以套用限制。

COPY_TABLE_PROPERTIES 程序

此程序會將一個表格的特性複製到另一個表格,包括選擇性的資料欄特性。

GRANT_TO_RECIPIENT 程序

REVOKE_FROM_RECIPIENT 程序

這些程序會管理型錄收件人的存取權限。

事件記錄

子程式 描述

CLEAR_CATALOG_EVENTS 程序

此程序會清除時間範圍內目錄事件日誌的事件。

Iceberg 特定管理

子程式 描述

CREATE_ICEBERG_TABLE 程序

此程序會在目錄中的指定綱要內建立新的 Iceberg 表格。

ADD_ICEBERG_SNAPSHOT 程序

此程序會新增快照至 Iceberg 表格,以詳細中繼資料表示資料變更。

MOUNT_DATA_CATALOG 程序

此程序會掛載資料目錄 (例如 AWS GLUE 或 OCI 資料目錄)。

語法

PROCEDURE mount_data_catalog
(
  catalog_name 				IN VARCHAR2,
  data_catalog_type 		IN VARCHAR2,
  data_catalog_region 		IN VARCHAR2,
  data_catalog_credential 	IN VARCHAR2,
  data_catalog_id 			IN VARCHAR2 := NULL,
  data_storage_credential 	IN VARCHAR2 := NULL,
  enabled 					IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

新型錄的名稱。這會轉換成大寫 。

data_catalog_type

資料目錄的類型 (例如 OCI_DCAT 或 AWS_GLUE)。

data_catalog_region

資料目錄的雲端資源區域。

data_catalog_credential

用來存取資料目錄的本機證明資料。

data_catalog_id

資料目錄名稱或 ID。預設為 NULL。

data_storage_credential

它會指定資料存取的本機證明資料。預設為 NULL。這是選用的欄位。

enabled

指示目錄是否已啟用搜尋功能。預設為 TRUE

範例

/****************** Glue Catalog ******************/
BEGIN
  -- Create a credential capable of accessing a glue catalog
  dbms_cloud.create_credential('GLUE_CATALOG_CREDENTIAL', ...); 

  -- Mount a glue catalog
  dbms_catalog.mount_data_catalog(
    catalog_name             => 'GLUE_CAT',
    data_catalog_type        => 'AWS_GLUE',
    data_catalog_region      => 'us-east-1', 
    data_catalog_credential  => 'GLUE_CATALOG_CREDENTIAL');
END;
/

MOUNT_DB_LINK 程序

此程序會根據資料庫連結來掛載外部目錄。

語法

PROCEDURE mount_db_link
(
  catalog_name 	IN VARCHAR2,
  db_link 		IN VARCHAR2,
  enabled 		IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

新型錄的名稱。這會轉換成大寫 。

db_link

用於掛載目錄的資料庫連結。

enabled

指示目錄是否已啟用搜尋功能。預設為 TRUE

MOUNT_ICEBERG 程序

此程序安裝 Iceberg 目錄 。

語法

請參閱 Iceberg REST 目錄規格,以取得 Iceberg 目錄的詳細資訊。

PROCEDURE mount_iceberg
(
  catalog_name 				IN VARCHAR2,
  endpoint 					IN VARCHAR2,
  catalog_credential 		IN VARCHAR2,
  data_storage_credential 	IN VARCHAR2,
  configuration 			IN SYS.JSON_OBJECT_T := NULL,
  enabled 					IN BOOLEAN := TRUE,
  catalog_type 				IN VARCHAR2 := 'ICEBERG_GENERIC'
);

參數

Parameter - 參數 描述

catalog_name

新型錄的名稱。這會轉換成大寫 。

endpoint

Iceberg 基礎伺服器 URL 。

catalog_credential

用來存取 Iceberg 目錄的憑證 。

data_storage_credential

用來存取資料的證明資料。

configuration

這會將目錄組態描述為 JSON 物件。

以下為支援的配置:
  • namespacePath:預設為 NULL
  • namespaceSeparator:Unity 的預設值為點 (.) ,其他 Iceberg 目錄的預設值為 %1F
  • isCaseSensitive:Unity 的預設值為 FALSE,其他 Iceberg 目錄的預設值為 TRUE)
  • isPublicCatalog:預設為 FALSE
  • bucketRegion:預設為 NULL。只有在目錄使用 S3 儲存體時才有意義。
enabled

這表示型錄是否已啟用搜尋。預設為 TRUE

catalog_type

Iceberg 目錄的類型 (例如:ICEBERG_GENERICICEBERG_POLARISICEBERG_UNITY)。預設為 ICEBERG_GENERIC

範例

/****************** Iceberg Catalog - Unity ******************/
DECLARE
  config      JSON_OBJECT_T := JSON_OBJECT_T();
BEGIN
  -- Create a credential capable of accessing an external iceberg REST catalog
  dbms_share.create_bearer_token_credential(
    credential_name => 'ICEBERG_CATALOG_CREDENTIAL',
    token_endpoint => 'https://.../v1/tokens',
    client_id => ...,
    client_secret => ...,
    token_scope => 'all-apis');

  -- Create a credential capable of accessing the bucket where the 
  -- iceberg data files are stored.
  dbms_cloud.create_credential('ICEBERG_STORAGE_CRED', ...); 

  -- Mount a iceberg catalog
  config.put('namespacePath', 'sales_catalog');
  dbms_catalog.mount_iceberg(
    catalog_name             => 'ICEBERG_CAT',
    endpoint                 => 'https://...//api/2.1/unity-catalog/iceberg/v1',
    catalog_credential       => 'ICEBERG_CATALOG_CREDENTIAL',
    data_storage_credential  => 'ICEBERG_STORAGE_CRED',
    configuration            => config,
    catalog_type             => 'ICEBERG_UNITY');
END;
/

/****************** Iceberg Catalog - Polaris ******************/
DECLARE
  config      JSON_OBJECT_T := JSON_OBJECT_T();
BEGIN
  -- Create a credential capable of accessing an external iceberg REST catalog
  dbms_share.create_bearer_token_credential(
    credential_name => 'ICEBERG_CATALOG_CREDENTIAL',
    token_endpoint => 'https://.../v1/oauth/tokens',
    client_id => ...,
    client_secret => ...,
    token_scope => 'PRINCIPAL_ROLE:ALL');

  -- Create a credential capable of accessing the bucket where the 
  -- iceberg data files are stored.
  dbms_cloud.create_credential('ICEBERG_STORAGE_CRED', ...); 

  -- Mount a iceberg catalog
  config.put('namespacePath', 'sales_catalog');
  dbms_catalog.mount_iceberg(
    catalog_name             => 'ICEBERG_CAT',
    endpoint                 => 'https://.../polaris/api/catalog/v1',
    catalog_credential       => 'ICEBERG_CATALOG_CREDENTIAL',
    data_storage_credential  => 'ICEBERG_STORAGE_CRED',
    configuration            => config,
    catalog_type             => 'ICEBERG_POLARIS');
END;
/

MOUNT_SHARE 程序

此程序會根據單一共用來掛載目錄。

語法

PROCEDURE mount_share
(
  catalog_name 				IN VARCHAR2,
  share_provider 			IN VARCHAR2,
  share_name 				IN VARCHAR2,
  share_provider_owner 		IN VARCHAR2 := NULL,
  enabled 					IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

新型錄的名稱。這會轉換成大寫 。

share_provider

共用提供者的名稱。

share_name

要掛載的共用名稱。

share_provider_owner

共用提供者的擁有者。預設為目前目錄 (若為空值)。

enabled

指示目錄是否已啟用搜尋功能。預設為 TRUE。

範例

/****************** Share Catalog ******************/
BEGIN
  -- Create a share provider
  dbms_share.create_or_replace_share_provider(
    provider_name        => 'MY_SHARE_PROVIDER',
    endpoint             => 'https://...');
  dbms_cloud.create_credential(
    credential_name      => 'SHARE_PROVIDER_CREDENTIAL', ...);
  dbms_share.set_share_provider_credential(
    provider_name        => 'MY_SHARE_PROVIDER',
    share_credential     => 'SHARE_PROVIDER_CREDENTIAL');

  -- Mount a share catalog
  dbms_catalog.mount_share(
    catalog_name         => 'SHARE_CAT',
    share_provider       => 'MY_SHARE_PROVIDER',
    share_name           => 'MY_SHARE_1');
END;
/

MOUNT_SHARES 程序

此程序會根據共用提供者的共用來掛載多個目錄。

語法

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN SYS.JSON_ARRAY_T,
  created_catalogs 		IN OUT NOCOPY SYS.JSON_ARRAY_T,
  share_provider_owner 	IN VARCHAR2 := NULL
);

參數

Parameter - 參數 描述

share_provider:

共用提供者的名稱。

shares

定義要掛載之共用清單的 JSON 陣列。每個元素都會指定 shareNamerequiredshareNameRulecatalogNameskipExistingplaceholderenabled 等特性。

created_catalogs

新建立目錄的 JSON 陣列,以 shareNamecatalogName 等特性的輸出傳回。

share_provider_owner

共用提供者的擁有者。預設為目前目錄 (若為空值)。

第二個程序的語法

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN SYS.JSON_ARRAY_T,
  share_provider_owner 	IN VARCHAR2 := NULL
);

第三個程序的語法

PROCEDURE mount_shares
(
  share_provider 		IN VARCHAR2,
  shares 				IN CLOB := '[{shareName:"%"}]',
  share_provider_owner 	IN VARCHAR2 := NULL
);

第二個程序的參數

參數與程序 1 相同,但沒有 created_catalogs

第三個程序的參數

參數與簽名 1 相同,但共用是 CLOB,其預設值包含所有共用。

範例

/****************** Share Catalog ******************/
BEGIN
  -- Create a share provider
  dbms_share.create_or_replace_share_provider(
    provider_name        => 'MY_SHARE_PROVIDER',
    endpoint             => 'https://...');
  dbms_cloud.create_credential(
    credential_name      => 'SHARE_PROVIDER_CREDENTIAL', ...);
  dbms_share.set_share_provider_credential(
    provider_name        => 'MY_SHARE_PROVIDER',
    share_credential     => 'SHARE_PROVIDER_CREDENTIAL');

  -- Mount shares as catalogs
  dbms_catalog.mount_shares(
    share_provider       => 'MY_SHARE_PROVIDER');
END;
/

MOUNT_VIRTUAL_CATALOG 程序

此程序會建立並掛載新的虛擬目錄。

語法

PROCEDURE mount_virtual_catalog
(
  catalog_name 	IN VARCHAR2,
  enabled 		IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

新型錄的名稱。這會轉換成大寫 。

enabled

指示目錄是否已啟用搜尋功能。預設為 TRUE。

UNMOUNT 程序

此程序會卸載外部目錄。

語法

PROCEDURE unmount
(
  catalog_name IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

要卸載的現有目錄名稱。這會轉換成大寫 。

GET_CATALOG_PROPERTY 程序

此程序會傳回目錄的特性值。

語法

FUNCTION get_catalog_property
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

catalog_property

這說明要擷取的特性。(例如,PROP_CACHE_DURATIONPROP_IS_ENABLED)。

此值可以是下列任何常數:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

如需詳細資訊,請參閱型錄類型與常數

GET_CATALOG_PROPERTY_CLOB 程序

此程序會傳回 CLOB 格式之目錄的特性值。

語法

FUNCTION get_catalog_property_clob
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

catalog_property

這描述要擷取的特性 (例如,PROP_CACHE_DURATIONPROP_IS_ENABLED)。

此值可以是下列任何常數:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

如需詳細資訊,請參閱型錄類型與常數

UPDATE_CATALOG_PROPERTY 程序

此程序會更新型錄的屬性值。

語法

PROCEDURE update_catalog_property
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

catalog_property

這說明要更新的特性 (例如,PROP_CACHE_DURATIONPROP_IS_ENABLED)。

此值可以是下列任何常數:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

如需詳細資訊,請參閱型錄類型與常數

new_value

新的特性值。

UPDATE_CATALOG_PROPERTY_CLOB 程序

此程序會更新 CLOB 中型錄的特性值。

語法

PROCEDURE update_catalog_property_clob
(
  catalog_name 		IN VARCHAR2,
  catalog_property 	IN VARCHAR2,
  new_value 		IN CLOB
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

catalog_property

這描述要擷取的特性 (例如,PROP_CACHE_DURATIONPROP_IS_ENABLED)。

new_value

CLOB 中的新特性值。

GET_COLUMN_PROPERTY 函數

擷取目錄表格中資料欄的特定特性值,例如 PROP_CUSTOMPROP_METADATA

語法

FUNCTION GET_COLUMN_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

column_name

資料欄的名稱。

column_property

傳回特性值,例如 PROP_CUSTOMPROP_METADATA

GET_COLUMN_PROPERTY_CLOB 函數

以字元大型物件 (CLOB) 的形式擷取資料欄的特定特性值。

語法

FUNCTION GET_COLUMN_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

column_name

資料欄的名稱。

column_property

傳回特性值,例如 PROP_CUSTOMPROP_METADATA

另請參閱:

GET_COLUMN_PROPERTY 函數

UPDATE_COLUMN_PROPERTY 程序

使用發送更新至來源物件註釋的選項來更新特定欄的屬性值。

語法

PROCEDURE UPDATE_COLUMN_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2,
  new_value                      IN VARCHAR2,
  push_to_source                 IN BOOLEAN := FALSE
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

column_name

資料欄的名稱。

column_property

更新特性值,例如 PROP_CUSTOMPROP_METADATA

new_value

指定新的特性值。

push_to_source

指示是否將特性更新推送至來源物件註解。

預設值為 FALSE。

UPDATE_COLUMN_PROPERTY_CLOB 程序

將特定資料欄的特性值更新為大型資料之「字元大型物件 (CLOB)」的特性值,並提供將更新推送至來源物件註解的選項。

語法

PROCEDURE UPDATE_COLUMN_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  column_name                    IN VARCHAR2,
  column_property                IN VARCHAR2,
  new_value                      IN CLOB,
  push_to_source                 IN BOOLEAN := FALSE
);

參數

Parameter - 參數 描述
catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

column_name

資料欄的名稱。

column_property

更新特性值,例如 PROP_CUSTOMPROP_METADATA

new_value

以 CLOB 格式指定新值。

push_to_source

指示是否將特性更新推送至來源物件註解。

預設值為 FALSE。

GET_SCHEMA_PROPERTY 程序

此程序會傳回綱要的特性值。

語法

FUNCTION get_schema_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2
)

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

schema_property

這描述要擷取的特性 (例如,PROP_CUSTOMPROP_METADATA)。

GET_SCHEMA_PROPERTY_CLOB 程序

此程序會傳回 CLOB 格式之綱要的特性值。

語法

FUNCTION get_schema_property_clob
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

schema_property

這描述要擷取的特性 (例如,PROP_CUSTOMPROP_METADATA)。

UPDATE_SCHEMA_PROPERTY 程序

此程序會傳回綱要之特性的值。

語法

PROCEDURE update_schema_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  schema_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

schema_property

這描述要擷取的特性 (例如,PROP_CUSTOMPROP_METADATA)。

new_value

新的特性值。

UPDATE_SCHEMA_PROPERTY_CLOB 程序

將綱要的特性值更新為大型資料的「字元大型物件 (CLOB)」。

語法

PROCEDURE UPDATE_SCHEMA_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  schema_property                IN VARCHAR2,
  new_value                      IN CLOB
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

schema_property

更新特性值,例如 PROP_CUSTOMPROP_METADATA

new_value

指定新的特性值。

GET_TABLE_PROPERTY 程序

傳回表格的特性值。

語法

FUNCTION GET_TABLE_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_property                 IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

table_property

要擷取的特性。

GET_TABLE_PROPERTY_CLOB 程序

此程序會傳回 CLOB 格式之表格的特性值。

語法

FUNCTION get_table_property_clob
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  table_property 	IN VARCHAR2
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

table_name

表格名稱.

table_property

要更新的特性 (例如 PROP_CUSTOM)。

UPDATE_TABLE_PROPERTY 程序

此程序會更新表格特性的值。

語法

PROCEDURE update_table_property
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  table_property 	IN VARCHAR2,
  new_value 		IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

table_name

表格名稱.

table_property

要更新的特性。

new_value

新的特性值。

UPDATE_TABLE_PROPERTY_CLOB 程序

使用「字元大型物件 (CLOB)」資料類型來更新表格特性的值。

語法

PROCEDURE UPDATE_TABLE_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_property                 IN VARCHAR2,
  new_value                      IN CLOB,
  push_to_source                 IN BOOLEAN := FALSE
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

table_property

要更新的表格特性。

new_value

以 CLOB 格式指定新值。

push_to_source

指示是否將特性更新推送至來源物件註解。

預設值為 FALSE。

ADD_REQUIRED_CREDENTIAL 程序

定義使用目錄所需的證明資料。

語法

PROCEDURE ADD_REQUIRED_CREDENTIAL
(
  catalog_name                   IN VARCHAR2,
  required_credential            IN VARCHAR2,
  local_credential               IN VARCHAR2 := NULL,
  credential_type                IN VARCHAR2 := NULL
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

required_credential

必要證明資料的名稱。

local_credential

這是選用的本機證明資料。

預設值為 NULL。

credential_type

選擇性

此參數指定用來存取外部服務 (例如物件儲存或其他資料庫) 的認證機制類型。例如 oci、aws、azure 或 slack_credential。

如需詳細資訊,請參閱型錄類型與常數

REMOVE_REQUIRED_CREDENTIAL 程序

此程序會從目錄移除必要的證明資料。

語法

PROCEDURE remove_required_credential
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

required_credential

要移除之必要證明資料的名稱。

RENAME_REQUIRED_CREDENTIAL 程序

此程序會從目錄重新命名必要的證明資料。

語法

PROCEDURE rename_required_credential
(
  catalog_name 			IN VARCHAR2,
  old_credential_name 	IN VARCHAR2,
  new_credential_name 	IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

old_credential_name

必要證明資料的舊名稱。

new_credential_name

必要證明資料的新名稱。

GET_REQUIRED_CREDENTIAL_PROPERTY 程序

此程序會擷取指定之必要證明資料的特性。

語法

FUNCTION get_required_credential_property
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  credential_property 	IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

required_credential

必要證明資料的名稱。

credential_property

特性名稱 (例如 PROP_REQUIRED_CREDENTIAL_DESCRIPTIONPROP_REQUIRED_CREDENTIAL_VAULT_SECRET)。

UPDATE_REQUIRED_CREDENTIAL_PROPERTY 程序

此程序會更新指定之必要證明資料的特性。

語法

PROCEDURE update_required_credential_property
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  credential_property 	IN VARCHAR2,
  new_value 			IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

required_credential

必要證明資料的名稱。

credential_property

特性名稱 (例如 PROP_REQUIRED_CREDENTIAL_DESCRIPTIONPROP_REQUIRED_CREDENTIAL_VAULT_SECRET)。

new_value

該屬性的新值。

GET_LOCAL_CREDENTIAL_MAP (超載) 程序

此程序會擷取必要證明資料的對應至本機證明資料。

語法 1

PROCEDURE get_local_credential_map
(
  catalog_name 		IN VARCHAR2,
  credential_map 	OUT NOCOPY credential_info_map
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

credential_map

填入的證明資料對應。

語法 2

FUNCTION get_local_credential_map
(
  catalog_name 	IN VARCHAR2,
  show_errors 	IN NUMBER := 0,
  pretty_json 	IN NUMBER := 0
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。

show_errors

這會顯示無效本機證明資料的錯誤訊息。預設為 0。

pretty_json

使用 PRETTY 選項格式化 JSON。預設為 0

語法 3

PROCEDURE get_local_credential_map
(
  catalog_id 		IN NUMBER,
  credential_map 	OUT NOCOPY SYS.JSON_OBJECT_T
);

參數

Parameter - 參數 描述

catalog_id

ALL_MOUNTED_CATALOGSCATALOG_ID 資料欄的現有目錄 ID。

credential_map

植入的對應為 JSON 物件。

SET_LOCAL_CREDENTIAL 程序

此程序指定使用目錄時所要使用的本機證明資料。

語法

PROCEDURE set_local_credential
(
  catalog_name 			IN VARCHAR2,
  required_credential 	IN VARCHAR2,
  local_credential 		IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

required_credential

必要證明資料的名稱。

local_credential

要使用的證明資料。

GET_CLOUD_STORAGE_LINK_PROPERTY 函數

擷取目錄中雲端儲存連結的特定特性值,例如 PROP_CUSTOMPROP_METADATA

語法

FUNCTION GET_CLOUD_STORAGE_LINK_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2
)
RETURN VARCHAR2;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

storage_link_name

雲端儲存連結的名稱。

storage_link_property

傳回特性值,例如 PROP_CUSTOMPROP_METADATA

GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB 函數

以字元大型物件 (CLOB) 的形式擷取雲端儲存連結的特定特性值。

語法

FUNCTION GET_CLOUD_STORAGE_LINK_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

storage_link_name

雲端儲存連結的名稱。

storage_link_property

傳回特性值,例如 PROP_CUSTOMPROP_METADATA

UPDATE_CLOUD_STORAGE_LINK_PROPERTY 程序

更新目錄中雲端儲存連結的特定特性值。

語法

PROCEDURE UPDATE_CLOUD_STORAGE_LINK_PROPERTY
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2,
  new_value                      IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

storage_link_name

雲端儲存連結的名稱。

storage_link_property

更新特性值,例如 PROP_CUSTOMPROP_METADATA

new_value

指定新的特性值。

UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB 程序

將雲端儲存連結的特定特性值更新為較大資料的字元大型物件 (CLOB)。

語法

PROCEDURE UPDATE_CLOUD_STORAGE_LINK_PROPERTY_CLOB
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  storage_link_name              IN VARCHAR2,
  storage_link_property          IN VARCHAR2,
  new_value                      IN CLOB
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

storage_link_name

雲端儲存連結的名稱。

storage_link_property

更新特性值,例如 PROP_CUSTOMPROP_METADATA

new_value

以 CLOB 格式指定新值。

CREATE_CLOUD_STORAGE_LINK 程序

此程序會在目錄中建立雲端儲存連結。

語法

PROCEDURE create_cloud_storage_link
(
  catalog_name 			IN VARCHAR2,
  schema_name 			IN VARCHAR2,
  storage_link_name 	IN VARCHAR2,
  uri 					IN VARCHAR2,
  required_credential 	IN VARCHAR2 := NULL,
  enabled 				IN BOOLEAN := TRUE,
  replace_if_exists 	IN BOOLEAN := FALSE
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name:

綱要名稱。

storage_link_name

儲存連結名稱。

uri

儲存桶 URI。

required_credential

必要的證明資料 (公用儲存桶的證明資料為空值)。

預設為 NULL。

enabled

指示是否啟用儲存連結進行搜尋。預設為 TRUE。

replace_if_exists

如果連結已存在,則取代該連結。預設為 FALSE。

DROP_CLOUD_STORAGE_LINK 程序

此程序會從目錄刪除雲端儲存連結。

語法

PROCEDURE drop_cloud_storage_link
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  storage_link_name IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name:

綱要名稱。

storage_link_name

儲存連結名稱。

GET_CLOUD_STORAGE_LINKS 函數

擷取目錄的特定或所有雲端儲存連結。

語法

FUNCTION GET_CLOUD_STORAGE_LINKS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  storage_link_name              IN VARCHAR2 := NULL,
  conditions                     IN VARCHAR2 := NULL,
  flags                          IN NUMBER := 0,
  result_limit                   IN NUMBER := NULL,
  column_flags                   IN NUMBER := 0
)
RETURN CATALOG_STORAGE_LINKS PIPELINED;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

(選擇性)

來源目錄綱要的名稱。

預設值為 NULL。

storage_link_name

(選擇性)

雲端儲存連結的名稱。

預設值為 NULL。

conditions

(選擇性)

使用歷程語法的其他篩選表示式。

預設值為 NULL。

flags

(選擇性)

其他控制的旗標。

預設值為 0 (零)。

result_limit

(選擇性)

要傳回的資料列數目上限。

預設值為 NULL。

column_flags

(選擇性)

資料欄旗標,例如 FETCH_PROPERTIESFETCH_METADATA

GET_COLUMNS 函數

從目錄中的表格或視觀表擷取所有資料欄。

語法

FUNCTION GET_COLUMNS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  parent_type                    IN VARCHAR2 := NULL,
  column_name                    IN VARCHAR2 := NULL,
  conditions                     IN VARCHAR2 := NULL,
  flags                          IN NUMBER := 0,
  result_limit                   IN NUMBER := NULL,
  column_flags                   IN NUMBER := 0,
  table_name                     IN VARCHAR2 := NULL
)
RETURN COLUMN_RECORDS PIPELINED;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

(選擇性)

來源目錄綱要的名稱。

預設值為 NULL。

parent_type

(選擇性)

父項物件類型,亦即表格或檢視。

預設值為 NULL。

column_name

(選擇性)

資料欄的名稱。

預設值為 NULL。

conditions

(選擇性)

使用歷程語法的其他篩選表示式。

預設值為 NULL。

flags

(選擇性)

其他控制的旗標。

預設值為 0 (零)。

result_limit

(選擇性)

要傳回的資料列數目上限。

預設值為 NULL。

column_flags

(選擇性)

資料欄旗標,例如 FETCH_PROPERTIESFETCH_METADATA

預設值為 0 (零)。

table_name

(選擇性)

來源型錄表格的名稱。

預設值為 NULL。

CREATE_EXTERNAL_TABLE 程序

在目錄中建立外部表格。

語法

PROCEDURE CREATE_EXTERNAL_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  storage_link_name              IN VARCHAR2 := NULL,
  file_uri_list                  IN CLOB,
  column_list                    IN CLOB := NULL,
  field_list                     IN CLOB := NULL,
  table_format                   IN CLOB := NULL,
  credential_name                IN VARCHAR2 := NULL,
  replace_if_exists              IN BOOLEAN := FALSE
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

storage_link_name

(選擇性)

雲端儲存連結的名稱。

預設值為 NULL。

file_uri_list

相關檔案清單為 CLOB。

column_list

(選擇性)

資料欄清單。

預設值為 NULL。

field_list

(選擇性)

欄位清單。

預設值為 NULL。

table_format

(選擇性)

讀取外部檔案的格式或選項,例如 CSV、Parquet 或 Avro、分界字元、標頭、綱要衍生設定值等等。它以 JSON 索引鍵 - 值組表示。

預設值為 NULL。

credential_name

證明資料的名稱。

預設值為 NULL。

replace_if_exists

表示是否取代已存在的物件。

預設值為 FALSE。

CREATE_SCHEMA 程序

在目錄中建立新綱要。您也可以在遠端目錄中建立 Apache Iceberg 綱要。

語法

PROCEDURE CREATE_SCHEMA
(
  catalog_name          IN VARCHAR2,
  schema_name           IN VARCHAR2,
  schema_definition     IN CLOB := NULL
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

schema_definition

(選擇性)

綱要定義有效負載 (Payload)。

預設值為 NULL。

另請參閱:

DROP_SCHEMA 程序

DROP_SCHEMA 程序

此程序會從目錄刪除綱要及其所有內容。

語法

PROCEDURE drop_schema
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name:

要刪除的綱要名稱。

GET_OBJECTS 程序

此程序會擷取目錄的所有物件。

語法

FUNCTION get_objects
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  object_name 	IN VARCHAR2 := NULL,
  conditions 	IN VARCHAR2 := NULL,
  flags 		IN NUMBER := 0,
  result_limit 	IN NUMBER := NULL
)
RETURN catalog_objects PIPELINED;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

選擇性綱要名稱。預設為 NULL

object_name

選擇性物件名稱。預設為 NULL

conditions

選擇性使用歷程語法的其他條件。預設為 NULL

result_limit

選擇性的結果限制 。預設為 NULL。

GET_SCHEMAS 程序

此程序會擷取目錄的所有綱要。

語法

FUNCTION get_schemas
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  conditions 	IN VARCHAR2 := NULL,
  flags 		IN NUMBER := 0,
  result_limit 	IN NUMBER := NULL,
  column_flags 	IN NUMBER := 0
)
RETURN catalog_schemas PIPELINED;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

選擇性綱要名稱。預設為 NULL

conditions

選擇性使用歷程語法的其他條件。預設為 NULL

result_limit

選擇性的結果限制 。預設為 NULL。

column_flags

選擇性資料欄旗標 (例如 FETCH_PROPERTIESFETCH_METADATA)。預設為 0。

GET_TABLES 程序

此程序會擷取目錄的所有表格。

語法

FUNCTION get_tables
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2 := NULL,
  table_name 		IN VARCHAR2 := NULL,
  conditions 		IN VARCHAR2 := NULL,
  flags 			IN NUMBER := 0,
  result_limit 		IN NUMBER := NULL,
  column_flags 		IN NUMBER := 0
)
RETURN catalog_tables PIPELINED;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

選擇性綱要名稱。預設為 NULL

table_name

選擇性表格名稱。預設為 NULL

conditions

選擇性使用歷程語法的其他條件。預設為 NULL

result_limit

選擇性的結果限制 。預設為 NULL。

column_flags

選擇性資料欄旗標 (例如 FETCH_PROPERTIESFETCH_METADATA)。預設為 0。

附註:

  • RECORD 類型描述具有資料庫中具名欄位的結構化資料。

  • 您必須查詢資料庫的資訊綱要、系統目錄,或使用資料庫自我檢查工具來查看 RECORD 類型的結構。

GET_TABLE 程序

以記錄形式擷取目錄中特定表格的詳細資訊,以及自訂輸出與快取考量事項的選項。

語法

PROCEDURE GET_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_info                     OUT NOCOPY catalog_table,
  options                        IN CLOB := NULL,
  flags                          IN NUMBER := 0,
  column_flags                   IN NUMBER := 0,
  prev_gen_sql                   IN CLOB := NULL,
  prev_ts                        IN TIMESTAMP WITH TIME ZONE := NULL
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

options

JSON 物件的產生選項,例如 distinct、rowLimit、select、orderBy 和 directive。

預設值為 NULL。

flags

(選擇性)

其他控制的旗標。

預設值為 0 (零)。

column_flags

(選擇性)

資料欄旗標,例如 FETCH_PROPERTIESFETCH_METADATA

預設值為 0 (零)。

prev_gen_sql

先前產生的增量處理 SELECT 敘述句 (如果知道的話)。

預設值為 NULL。

prev_ts

上一代的時戳 (如果知道的話)。

預設值為 NULL。

另請參閱:

GET_TABLE 函數

GET_TABLE 函數

擷取以 JSON 格式作為字元大型物件 (CLOB) 之特定表格的詳細資訊。

語法

FUNCTION GET_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  options                        IN CLOB := NULL,
  flags                          IN NUMBER := 0,
  column_flags                   IN NUMBER := 0,
  prev_gen_sql                   IN CLOB := NULL,
  prev_ts                        IN TIMESTAMP WITH TIME ZONE := NULL
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

options

JSON 物件的產生選項,例如 distinct、rowLimit、select、orderBy 和 directive。

預設值為 NULL。

flags

(選擇性)

其他控制的旗標。

預設值為 0 (零)。

column_flags

(選擇性)

資料欄旗標,例如 FETCH_PROPERTIESFETCH_METADATA

預設值為 0 (零)。

prev_gen_sql

先前產生的增量處理 SELECT 敘述句 (如果知道的話)。

預設值為 NULL。

prev_ts

上一代的時戳 (如果知道的話)。

預設值為 NULL。

另請參閱:

GET_TABLE 程序

DROP_TABLE 程序

此程序會從目錄刪除表格。

語法

PROCEDURE drop_table
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要名稱。

table_name

表格名稱。

GENERATE_TABLE_SELECT (超載) 程序

此程序會產生邏輯表格的 SELECT 敘述句。

語法

PROCEDURE generate_table_select
(
  catalog_name 		IN VARCHAR2,
  schema_name 		IN VARCHAR2,
  table_name 		IN VARCHAR2,
  stmt 				IN OUT NOCOPY CLOB,
  options 			IN CLOB := NULL,
  prev_gen_sql 		IN CLOB := NULL,
  prev_ts 			IN TIMESTAMP WITH TIME ZONE := NULL
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要名稱。

table_name

表格名稱。

stmt

產生的 SELECT 敘述句作為輸出。

options

JSON 物件的產生選項 (例如 distinct、rowLimit、select、orderBy)。預設為 NULL。

prev_gen_sql

先前產生的 SELECT 陳述式 (若已知)。預設為 NULL。

prev_ts

上一代的時戳 (如果知道的話)。預設為 NULL。

語法

FUNCTION generate_table_select
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2,
  options 		IN CLOB := NULL,
  prev_gen_sql 	IN CLOB := NULL,
  prev_ts 		IN TIMESTAMP WITH TIME ZONE := NULL
)
RETURN CLOB;

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要名稱。

table_name

表格名稱。

stmt

產生的 SELECT 敘述句作為輸出。

options

JSON 物件的產生選項 (例如 distinct、rowLimit、select、orderBy)。預設為 NULL。

prev_gen_sql

先前產生的 SELECT 陳述式 (若已知)。預設為 NULL。

prev_ts

上一代的時戳 (如果知道的話)。預設為 NULL。

OPEN_TABLE_CURSOR 程序

此程序會開啟一個從邏輯表格傳回資料的游標。

語法

PROCEDURE open_table_cursor
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2,
  table_name 	IN VARCHAR2,
  table_cursor 	IN OUT NOCOPY SYS_REFCURSOR,
  options 		IN CLOB := NULL
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

選擇性綱要名稱。預設為 NULL

table_name

選擇性表格名稱。預設為 NULL

table_cursor

傳回資料的游標。

options

以 JSON 物件形式產生選項 (例如 rowLimit、select、orderBy)。預設為 NULL。

FLUSH_CATALOG_CACHE 程序

此程序會清除目錄描述資料快取,

語法

PROCEDURE flush_catalog_cache
(
  catalog_name 	IN VARCHAR2,
  auto_commit	IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

auto_commit

指示是否應自動確認變更。預設為 TRUE。

PREFILL_CATALOG_CACHE 程序

此程序會以目前資料填入指定目錄的快取。

語法

PROCEDURE prefill_catalog_cache
(
  catalog_name 	IN VARCHAR2,
  schema_name 	IN VARCHAR2 := NULL,
  auto_commit 	IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

綱要的名稱。

auto_commit

指示是否應自動確認變更。預設為 TRUE。

CREATE_SYNCHRONIZED_SCHEMAS 程序

此程序會建立與遠端目錄定義同步的本機資料庫綱要。

語法

PROCEDURE create_synchronized_schemas
(
  catalog_name IN VARCHAR2,
  schema_names IN VARCHAR2 := NULL,
  restrictions IN CLOB := NULL
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

以逗號區隔的綱要名稱清單 (加上引號或未加上引號)。預設為 NULL 以同步化所有綱要。

restrictions

指定目錄實體範圍的 JSON 文件。預設為 NULL。

DROP_SYNCHRONIZED_SCHEMAS 程序

此程序會刪除一或多個同步的綱要。

語法

PROCEDURE drop_synchronized_schemas
(
  catalog_name IN VARCHAR2,
  schema_names IN VARCHAR2 := NULL,
  restrictions IN CLOB := NULL
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

schema_name

以逗號區隔的綱要名稱清單 (加上引號或未加上引號)。預設為 NULL 以同步化所有綱要。

restrictions

指定目錄實體範圍的 JSON 文件。預設為 NULL。

UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY 程序

此程序會更新已同步綱要的特性。

語法

PROCEDURE update_synchronized_schema_property
(
  catalog_name 	IN VARCHAR2,
  property_name IN VARCHAR2,
  new_value 	IN CLOB
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

property_name

要更新的特性名稱。

new_value

新值作為 CLOB。

SYNCHRONIZE_SHARED_CATALOGS 程序

根據不再可用的共用來處理型錄。

語法

PROCEDURE SYNCHRONIZE_SHARED_CATALOGS
(
  provider_id                    IN NUMBER := NULL,
  remove_unavailable             IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述
provider_id

(選擇性)

識別同步化範圍。變更僅限於指定的共用提供者 ID。如果為 NULL,它會同步所有已註冊的共用提供者,包括已過期的共用。

預設值為 NULL。

remove_unavailable

根據共用可用性決定型錄上的動作。

  • TRUE:卸載已刪除或無法使用的共用物件。

  • FALSE:如果共用無法使用,則會停用物件。

預設值為 TRUE。

CREATE_SYNCHRONIZED_VIEWS 程序

在目錄表上建立檢視以定義限制。

語法

PROCEDURE CREATE_SYNCHRONIZED_VIEWS
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2 := NULL,
  target_schema                  IN VARCHAR2 := NULL,
  table_names                    IN VARCHAR2 := NULL,
  view_prefix                    IN VARCHAR2 := NULL,
  replace_existing               IN BOOLEAN := FALSE,
  ignore_errors                  IN BOOLEAN := TRUE
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

預設值為 NULL。

target_schema

目標綱要的名稱。

預設值為 NULL。

table_names

以逗號區隔的表格名稱清單 (如果特定表格為目標)。

預設值為 NULL。

view_prefix

要加到每個產生檢視名稱前面的字串 。

預設值為 NULL。

replace_existing

表示是否取代已存在的物件。

預設值為 FALSE。

ignore_errors

指出是否忽略任何錯誤,並繼續處理剩餘的物件。

預設值為 TRUE。

COPY_TABLE_PROPERTIES 程序

將表格特性和選擇性的資料欄特性從來源表格複製到跨目錄和綱要的目標表格,並選取特性集並指定資料欄重新命名對應。

語法

PROCEDURE COPY_TABLE_PROPERTIES
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  target_catalog_name            IN VARCHAR2 := DEFAULT_CATALOG,
  target_schema_name             IN VARCHAR2 := NULL,
  target_table_name              IN VARCHAR2 := NULL,
  properties                     IN VARCHAR2 := PROP_CUSTOM,
  copy_column_props              IN BOOLEAN := TRUE,
  renamed_columns                IN CLOB := NULL
);

參數

Parameter - 參數 描述
catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

來源型錄表格的名稱。

target_catalog_name

目標目錄的名稱。

預設值為 DEFAULT_CATALOG

target_schema_name

目標綱要的名稱。

預設值為 NULL。

target_table_name

目標目錄表格的名稱。

預設值為 NULL。

properties

要複製的特性,例如 CUSTOM:prop_x。預設值為 PROP_CUSTOM

copy_column_props

表示是否複製資料欄自訂特性。

預設值為 TRUE。

renamed_columns

重新命名之目標資料欄的 JSON 對應,例如 {"source_col":"target_col"}

預設值為 NULL。

另請參閱:

GET_TABLE_PROPERTY 程序

GRANT_TO_RECIPIENT 程序

此程序會將目錄的存取權授予特定的共用收件者。

語法

PROCEDURE grant_to_recipient
(
  catalog_name 		IN VARCHAR2,
  recipient_name 	IN VARCHAR2
);

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

recipient_name

共用收件者的名稱 (由 DBMS_SHARE.CREATE_SHARE_RECIPIENT 建立)。

REVOKE_FROM_RECIPIENT 程序

此程序會撤銷特定收件人對目錄的存取權。

語法

PROCEDURE revoke_from_recipient
(
  catalog_name 		IN VARCHAR2,
  recipient_name 	IN VARCHAR2,
  owner 			IN VARCHAR2 := NULL
);	

參數

Parameter - 參數 描述

catalog_name

現有型錄的名稱。這會轉換成大寫 。

recipient_name

共用收件者的名稱 (由 DBMS_SHARE.CREATE_SHARE_RECIPIENT 建立)。

owner

型錄與收件人的擁有者。預設為 NULL

CLEAR_CATALOG_EVENTS 程序

以記錄形式擷取目錄中特定表格的詳細資訊,以及自訂輸出與快取考量事項的選項。

語法

PROCEDURE CLEAR_CATALOG_EVENTS
(
  catalog_name                   IN VARCHAR2,
  from_time                      IN TIMESTAMP WITH TIME ZONE := NULL,
  to_time                        IN TIMESTAMP WITH TIME ZONE := NULL
);

參數

Parameter - 參數 描述

catalog_name

來源目錄的名稱。值為大寫。

from_time

選擇性

要清除之事件範圍的開始時間。

預設值為 NULL。

to_time

選擇性

要清除之事件範圍的結束時間。

預設值為 NULL。

CREATE_ICEBERG_TABLE 程序

在目錄的指定綱要內建立新的 Iceberg 表格,並傳回產生的描述資料。

語法

PROCEDURE CREATE_ICEBERG_TABLE
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  table_definition               IN CLOB,
  out_metadata                   OUT NOCOPY CLOB
);

參數

Parameter - 參數 描述
catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

新表格的名稱。

table_definition

表格定義為 CLOB。

out_metadata

輸出之後產生的表格描述資料。

另請參閱:

ADD_ICEBERG_SNAPSHOT 程序

ADD_ICEBERG_SNAPSHOT 程序

將快照新增至 Iceberg 表格以代表資料變更,包括用於追蹤歷程和內容的詳細中繼資料和選擇性參數。

語法

PROCEDURE ADD_ICEBERG_SNAPSHOT
(
  catalog_name                   IN VARCHAR2,
  schema_name                    IN VARCHAR2,
  table_name                     IN VARCHAR2,
  new_snapshot_id                IN NUMBER,
  new_timestamp                  TIMESTAMP WITH TIME ZONE,
  new_manifest_list              IN VARCHAR2,
  new_summary                    IN CLOB := NULL,
  new_parent_snapshot_id         IN NUMBER := NULL,
  new_sequence_number            IN NUMBER := NULL,
  new_first_row_id               IN NUMBER := NULL,
  new_added_row_count            IN NUMBER := NULL,
  new_schema_id                  IN NUMBER := NULL,
  requirements                   IN CLOB := NULL,
  out_metadata                   OUT NOCOPY CLOB
);

參數

Parameter - 參數 描述
catalog_name

來源目錄的名稱。值為大寫。

schema_name

來源目錄綱要的名稱。

table_name

新表格的名稱。

new_snapshot_id

新快照的唯一識別碼。

new_timestamp

快照的建立時戳。

new_manifest_list

清單清單檔案的位置、路徑或 URI。

new_summary

至少包含「作業」欄位之快照的描述資料摘要。

new_parent_snapshot_id

此快照之父項的 ID。這不適用於根快照。

new_sequence_number

追蹤表格變更順序的遞增編號。

new_first_row_id

指派給快照第一個資料檔中第一列的開始列 ID。

new_added_row_count

快照中新增的資料列數目。

new_schema_id

建立快照時作用中的表格綱要 ID。

requirements

確認的先決條件 (JSON 陣列格式)。

out_metadata

輸出之後產生的表格描述資料。

另請參閱:

CREATE_ICEBERG_TABLE 程序