Zusammenfassung von DBMS_CATALOG

In diesem Abschnitt werden die DBMS_CATALOG-Unterprogramme behandelt, die mit der autonomen KI-Datenbank bereitgestellt werden.

Laden und Entladen von Katalogen

Unterprogramm Beschreibung

mount_db_link

Bei dieser Prozedur wird ein Katalog basierend auf einem Datenbanklink gemountet.

mount_shares

Bei diesem Verfahren werden mehrere Kataloge von einem Share-Provider gemountet, wobei Überlastungen verschiedene Eingabetypen unterstützen.

mount_share

Bei diesem Verfahren wird ein einzelner Katalog basierend auf einem Share gemountet.

mount_virtual_catalog

Bei diesem Verfahren wird ein neuer virtueller Katalog erstellt und gemountet.

mount_data_catalog

Bei diesem Verfahren wird ein Datenkatalog wie AWS GLUE oder OCI Data Catalog gemountet.

mount_iceberg

Bei diesem Verfahren wird ein Iceberg-Katalog mit bestimmten Konfigurationen eingehängt.

unmounten

Bei diesem Verfahren wird ein vorhandener externer Katalog aufgehoben.

Katalogeigenschaftenverwaltung

Unterprogramm Beschreibung

get_catalog_property und get_catalog_property_clob

Diese Prozeduren rufen Eigenschaftswerte für einen Katalog ab.

update_catalog_property und update_catalog_property_clob

Diese Prozeduren aktualisieren Eigenschaftswerte für einen Katalog.

get_schema_property und get_schema_property_clob

Diese Prozeduren rufen Schemaeigenschaftswerte ab.

update_schema_property und update_schema_property_clob

Mit diesen Prozeduren werden Schemaeigenschaftswerte aktualisiert.

get_table_property und get_table_property_clob

Diese Verfahren rufen Tabelleneigenschaftswerte ab.

update_table_property und update_table_property_clob

Mit diesen Verfahren werden Tabelleneigenschaftswerte aktualisiert.

Zugangsdatenverwaltung

Unterprogramm Beschreibung

add_required_credential

Diese Prozedur definiert die erforderlichen Zugangsdaten für einen Katalog.

remove_required_credential

Mit dieser Prozedur werden erforderliche Zugangsdaten aus einem Katalog entfernt.

rename_required_credential

Bei dieser Prozedur werden erforderliche Zugangsdaten umbenannt.

update_required_credential_property

Mit dieser Prozedur wird eine Eigenschaft mit erforderlichen Zugangsdaten aktualisiert.

get_required_credential_property

Diese Prozedur ruft eine Eigenschaft mit erforderlichen Zugangsdaten ab.

set_local_credential

Diese Prozedur gibt lokale Zugangsdaten für die erforderlichen Zugangsdaten an.

get_local_credential_map In diesem Verfahren werden Zuordnungen zwischen erforderlichen Zugangsdaten und lokalen Zugangsdaten mit Überlastungen für verschiedene Ausgabeformate abgerufen.

Katalogentitätsverwaltung

Unterprogramm Beschreibung

create_cloud_storage_link und drop_cloud_storage_link

Mit diesem Verfahren werden Cloud-Speicherlinks in einem Katalog verwaltet.

create_external_table

Mit dieser Prozedur wird eine externe Tabelle in einem Katalog erstellt.

drop_schema und drop_table

In diesem Verfahren werden Schemas und Tabellen aus einem Katalog gelöscht.

get_tables, get_schemas und get_objects

Diese Prozedur ruft Metadaten für Tabellen, Schemas und Objekte in einem Katalog mithilfe von Pipelined-Funktionen ab.

Datenzugriff und Caching

Unterprogramm Beschreibung

generate_table_select

Diese Prozedur erstellt eine SELECT-Anweisung für eine logische Tabelle mit Überlastungen für Prozedur und Funktion.

open_table_cursor

Diese Prozedur öffnet einen Cursor, um Daten aus einer logischen Tabelle zurückzugeben.

flush_catalog_cache und prefill_catalog_cache

Diese Prozedur verwaltet das Caching von Katalogmetadaten.

Synchronisierung und Freigabe

Unterprogramm Beschreibung

create_synchronized_schemas und drop_synchronized_schemas

Diese Prozedur verwaltet synchronisierte Schemas mit Remotekatalogdefinitionen.

update_synchronized_schema_property

In diesem Verfahren werden die Eigenschaften synchronisierter Schemas aktualisiert.

grant_to_recipient und revoke_from_recipient

In diesem Verfahren werden Zugriffsberechtigungen für Katalogempfänger verwaltet.

Prozedur MOUNT_DB_LINK

Bei dieser Prozedur wird ein externer Katalog basierend auf einem Datenbanklink gemountet.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des neuen Katalogs. Dieser wird in Großbuchstaben konvertiert.

db_link

Der Datenbanklink für das Mounten des Katalogs.

enabled

Gibt an, ob der Katalog für die Suche aktiviert ist. Der Standardwert ist TRUE.

Prozedur MOUNT_SHARES

Bei diesem Verfahren werden mehrere Kataloge basierend auf Shares von einem Share Provider gemountet.

Syntax

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

Parameter Beschreibung

share_provider:

Der Name des Freigabeproviders.

shares

Ein JSON-Array, das die Liste der einzuhängenden Shares definiert. Jedes Element gibt Eigenschaften wie shareName, required, shareNameRule, catalogName, skipExisting, placeholder und enabled an.

created_catalogs

Ein JSON-Array mit neu erstellten Katalogen, das als Ausgabe mit Eigenschaften wie shareName und catalogName zurückgegeben wird.

share_provider_owner

Der Eigentümer des Share Providers. Ist NULL, wird standardmäßig der aktuelle Katalog verwendet.

Syntax der zweiten Prozedur

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

Syntax der dritten Prozedur

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

Parameter der zweiten Prozedur

Parameter sind identisch mit Prozedur 1, außer ohne created_catalogs.

Parameter des dritten Verfahrens

Parameter sind identisch mit Signatur 1, außer Shares ist ein CLOB mit einem Standardwert, der alle Shares enthält.

Beispiel

/****************** 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;
/

Prozedur MOUNT_SHARE

Bei diesem Verfahren wird ein Katalog basierend auf einer einzelnen Freigabe gemountet.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des neuen Katalogs. Dieser wird in Großbuchstaben konvertiert.

share_provider

Der Name des Freigabeproviders.

share_name

Der Name des einzuhängenden Shares.

share_provider_owner

Der Eigentümer des Share Providers. Ist NULL, wird standardmäßig der aktuelle Katalog verwendet.

enabled

Gibt an, ob der Katalog für die Suche aktiviert ist. Der Standardwert ist TRUE.

Beispiel

/****************** 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;
/

Prozedur MOUNT_VIRTUAL_CATALOG

Bei diesem Verfahren wird ein neuer virtueller Katalog erstellt und gemountet.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des neuen Katalogs. Dieser wird in Großbuchstaben konvertiert.

enabled

Gibt an, ob der Katalog für die Suche aktiviert ist. Der Standardwert ist TRUE.

Prozedur MOUNT_DATA_CATALOG

Bei diesem Verfahren wird ein Datenkatalog gemountet (z.B. AWS GLUE oder OCI Data Catalog).

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des neuen Katalogs. Dieser wird in Großbuchstaben konvertiert.

data_catalog_type

Typ des Datenkatalogs (z.B. OCI_DCAT oder AWS_GLUE).

data_catalog_region

Die Cloud-Ressourcenregion des Datenkatalogs.

data_catalog_credential

Die lokalen Zugangsdaten für den Zugriff auf den Datenkatalog.

data_catalog_id

Name oder ID des Datenkatalogs. Standardwert ist NULL.

data_storage_credential

Gibt die lokalen Zugangsdaten für den Datenzugriff an. Standardwert ist NULL. Dies ist ein fakultatives Feld.

enabled

Gibt an, ob der Katalog für die Suche aktiviert ist. Der Standardwert ist TRUE.

Beispiel

/****************** 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;
/

Prozedur MOUNT_ICEBERG

Dieses Verfahren enthält einen Iceberg-Katalog.

Syntax

Weitere Informationen zum Iceberg Catalog finden Sie unter Iceberg-REST-Katalogspezifikation.

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

Parameter Beschreibung

catalog_name

Der Name des neuen Katalogs. Dieser wird in Großbuchstaben konvertiert.

endpoint

Die Iceberg-Basis-Server-URL.

catalog_credential

Die Zugangsdaten für den Zugriff auf den Iceberg-Katalog.

data_storage_credential

Die Zugangsdaten für den Zugriff auf die Daten.

configuration

Dadurch wird die Katalogkonfiguration als JSON-Objekt beschrieben.

Folgende Konfigurationen werden unterstützt:
  • namespacePath: Standard ist NULL.
  • namespaceSeparator: Standard ist Punkt (.) für Unity, %1F für andere Iceberg-Kataloge.
  • isCaseSensitive: Standard ist FALSE für Unity, TRUE für andere Iceberg-Kataloge)
  • isPublicCatalog: Standard ist FALSE.
  • bucketRegion: Standard ist NULL. Dies ist nur relevant, wenn der Katalog den S3-Speicher verwendet.
enabled

Gibt an, ob der Katalog für die Suche aktiviert ist. Der Standardwert ist TRUE.

catalog_type

Typ des Iceberg-Katalogs (z.B. ICEBERG_GENERIC, ICEBERG_POLARIS, ICEBERG_UNITY). Standard ist ICEBERG_GENERIC.

Beispiel

/****************** 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;
/

UNMOUNT-Verfahren

Bei diesem Verfahren wird ein externer Katalog ausgehängt.

Syntax

PROCEDURE unmount
(
  catalog_name IN VARCHAR2
);

Parameter

Parameter Beschreibung

catalog_name

Der Name eines vorhandenen Katalogs, der ausgehängt werden soll. Dieser wird in Großbuchstaben konvertiert.

Prozedur GET_CATALOG_PROPERTY

Diese Prozedur gibt den Wert einer Eigenschaft für einen Katalog zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

catalog_property

Hier wird die Eigenschaft beschrieben, die abgerufen werden soll. (Beispiel: PROP_CACHE_DURATION, PROP_IS_ENABLED).

Der Wert kann eine der folgenden Konstanten sein:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Weitere Informationen finden Sie unter Katalogtypen und Konstanten.

Prozedur GET_CATALOG_PROPERTY_CLOB

Diese Prozedur gibt den Wert einer Eigenschaft für einen Katalog im CLOB-Format zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

catalog_property

Hier wird die Eigenschaft beschrieben, die abgerufen werden soll (Beispiel: PROP_CACHE_DURATION, PROP_IS_ENABLED).

Der Wert kann eine der folgenden Konstanten sein:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Weitere Informationen finden Sie unter Katalogtypen und Konstanten.

Prozedur UPDATE_CATALOG_PROPERTY

Mit dieser Prozedur wird der Wert einer Eigenschaft für einen Katalog aktualisiert.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

catalog_property

Hier wird die zu aktualisierende Eigenschaft beschrieben (z.B. PROP_CACHE_DURATION, PROP_IS_ENABLED).

Der Wert kann eine der folgenden Konstanten sein:
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Weitere Informationen finden Sie unter Katalogtypen und Konstanten.

new_value

Der neue Eigenschaftswert.

Prozedur UPDATE_CATALOG_PROPERTY_CLOB

Mit dieser Prozedur wird der Wert einer Eigenschaft für einen Katalog in CLOB aktualisiert.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

catalog_property

Hier wird die Eigenschaft beschrieben, die abgerufen werden soll (Beispiel: PROP_CACHE_DURATION, PROP_IS_ENABLED).

new_value

Der neue Eigenschaftswert in CLOB.

Prozedur UPDATE_TABLE_PROPERTY_CLOB

Mit dieser Prozedur wird der Wert einer Eigenschaft für eine Tabelle im CLOB-Format aktualisiert.

Syntax

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
);

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

table_name

Der Name der Tabelle.

table_property

Die zu aktualisierende Eigenschaft.

new_value

Der neue Eigenschaftswert in CLOB.

Prozedur GET_SCHEMA_PROPERTY

Diese Prozedur gibt den Wert einer Eigenschaft für ein Schema zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

schema_property

Hier wird die abzurufende Eigenschaft beschrieben (Beispiel: PROP_CUSTOM, PROP_METADATA).

Prozedur GET_SCHEMA_PROPERTY_CLOB

Diese Prozedur gibt den Wert einer Eigenschaft für ein Schema im CLOB-Format zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

schema_property

Hier wird die abzurufende Eigenschaft beschrieben (Beispiel: PROP_CUSTOM, PROP_METADATA).

Prozedur UPDATE_SCHEMA_PROPERTY

Diese Prozedur gibt den Wert einer Eigenschaft für ein Schema zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

schema_property

Hier wird die abzurufende Eigenschaft beschrieben (Beispiel: PROP_CUSTOM, PROP_METADATA).

new_value

Der neue Eigenschaftswert.

Prozedur GET_TABLE_PROPERTY

Diese Prozedur gibt den Wert einer Eigenschaft für eine Tabelle zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

table_property

Die abzurufende Eigenschaft.

table_name

Der Name der Tabelle.

Prozedur GET_TABLE_PROPERTY_CLOB

Diese Prozedur gibt den Wert einer Eigenschaft für eine Tabelle im CLOB-Format zurück.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

table_name

Der Name der Tabelle.

table_property

Die zu aktualisierende Eigenschaft (z.B. PROP_CUSTOM).

Prozedur UPDATE_TABLE_PROPERTY

Mit dieser Prozedur wird der Wert einer Eigenschaft für eine Tabelle aktualisiert.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

table_name

Der Name der Tabelle.

table_property

Die zu aktualisierende Eigenschaft.

new_value

Der neue Eigenschaftswert.

Prozedur UPDATE_TABLE_PROPERTY_CLOB

Mit dieser Prozedur wird der Wert einer Eigenschaft für eine Tabelle im CLOB-Format aktualisiert.

Syntax

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
);

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

table_name

Der Name der Tabelle.

table_property

Die zu aktualisierende Eigenschaft.

new_value

Der neue Eigenschaftswert in CLOB.

Prozedur ADD_REQUIRED_CREDENTIAL

Diese Prozedur definiert Zugangsdaten, die für die Verwendung des Katalogs erforderlich sind.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

required_credential

Der Name der erforderlichen Zugangsdaten.

local_credential

Es handelt sich um optionale lokale Zugangsdaten. Standard ist NULL.

credential_type

Dies ist ein fakultatives Feld. Dieser Parameter gibt den Typ des Authentifizierungsmechanismus an, der für den Zugriff auf externe Services wie Objektspeicher oder andere Datenbanken verwendet wird. Beispiel: oci, aws, azure oder aslack_credential.

Weitere Informationen finden Sie unter Katalogtypen und Konstanten.

Prozedur REMOVE_REQUIRED_CREDENTIAL

Mit dieser Prozedur werden erforderliche Zugangsdaten aus einem Katalog entfernt.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

required_credential

Der Name der zu entfernenden Zugangsdaten.

Prozedur RENAME_REQUIRED_CREDENTIAL

Bei dieser Prozedur werden erforderliche Zugangsdaten aus einem Katalog umbenannt.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

old_credential_name

Der alte Name der erforderlichen Zugangsdaten.

new_credential_name

Der neue Name der erforderlichen Zugangsdaten.

Prozedur UPDATE_REQUIRED_CREDENTIAL_PROPERTY

Mit dieser Prozedur wird eine Eigenschaft mit benannten erforderlichen Zugangsdaten aktualisiert.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

required_credential

Der Name der erforderlichen Zugangsdaten.

credential_property

Der Eigenschaftsname (z.B. PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET).

new_value

Der neue Wert für die Eigenschaft.

Prozedur GET_REQUIRED_CREDENTIAL_PROPERTY

Diese Prozedur ruft eine Eigenschaft mit benannten erforderlichen Zugangsdaten ab.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

required_credential

Der Name der erforderlichen Zugangsdaten.

credential_property

Der Eigenschaftsname (z.B. PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET).

Prozedur SET_LOCAL_CREDENTIAL

Diese Prozedur gibt lokale Zugangsdaten an, die beim Konsumieren eines Katalogs verwendet werden sollen.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

required_credential

Der Name der erforderlichen Zugangsdaten.

local_credential

Die zu verwendenden Zugangsdaten.

GET_LOCAL_CREDENTIAL_MAP-(Overloaded-)Prozedur

Diese Prozedur ruft eine Zuordnung der erforderlichen Zugangsdaten zu lokalen Zugangsdaten ab.

Syntax 1

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

credential_map

Die aufgefüllte Zuordnung der Zugangsdaten.

Syntax 2

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs.

show_errors

Dadurch werden Fehlermeldungen für ungültige lokale Zugangsdaten angezeigt. Standard ist 0.

pretty_json

Formatieren Sie die JSON mit der Option PRETTY. Der Standardwert ist 0.

Syntax 3

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

Parameter

Parameter Beschreibung

catalog_id

Die ID eines vorhandenen Katalogs aus der Spalte CATALOG_ID in ALL_MOUNTED_CATALOGS.

credential_map

Die aufgefüllte Zuordnung als JSON-Objekt.

Prozedur CREATE_CLOUD_STORAGE_LINK

Mit dieser Prozedur wird ein Cloud-Speicherlink in einem Katalog erstellt.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name:

Der Schemaname.

storage_link_name

Der Name des Speicherlinks.

uri

Die Bucket URI.

required_credential

Die erforderlichen Zugangsdaten (oder NULL für öffentliche Buckets).

Standardwert ist NULL.

enabled

Gibt an, ob der Speicherlink für die Suche aktiviert ist. Der Standardwert ist TRUE.

replace_if_exists

Ersetzen Sie den Link, wenn er bereits vorhanden ist. Der Standardwert ist FALSE.

Prozedur DROP_CLOUD_STORAGE_LINK

Bei diesem Verfahren wird ein Cloud-Speicherlink aus einem Katalog gelöscht.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name:

Der Schemaname.

storage_link_name

Der Name des Speicherlinks.

Prozedur CREATE_EXTERNAL_TABLE

Mit dieser Prozedur wird eine externe Tabelle in einem Katalog erstellt.

Syntax

PROCEDURE create_external_table
(
  catalog_name 			IN VARCHAR2,
  schema_name 			IN VARCHAR2,
  table_name 			IN VARCHAR2,
  storage_link_name 	IN VARCHAR2,
  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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Schemaname.

table_name

Tabellenname.

storage_link_name

Der Name des Speicherlinks.

file_uri_list

Die relative Dateiliste als CLOB.

column_list

Optionale Spaltenliste. Standardwert ist NULL.

field_list

Optionale Feldliste. Standardwert ist NULL.

table_format

Optionale Formatinformationen. Standardwert ist NULL.

credential_name

Die erforderlichen Zugangsdaten. Standardwert ist NULL.

replace_if_exists

Ersetzen Sie die Tabelle, wenn sie bereits vorhanden ist. Der Standardwert ist FALSE.

Prozedur DROP_SCHEMA

Bei dieser Prozedur wird ein Schema zusammen mit dem gesamten Inhalt aus einem Katalog gelöscht.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name:

Der zu löschende Schemaname.

Prozedur DROP_TABLE

Bei diesem Verfahren wird eine Tabelle aus einem Katalog gelöscht.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Schemaname.

table_name

Tabellenname.

Prozedur CREATE_SCHEMA

Mit dieser Prozedur wird ein neues Schema in einem Katalog erstellt.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Schemaname.

Prozedur GET_TABLES

Bei diesem Verfahren werden alle Tabellen für einen Katalog abgerufen.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Optionaler Schemaname. Standard ist NULL.

table_name

Optionaler Tabellenname. Standard ist NULL.

conditions

Optionale zusätzliche Bedingungen mit Herkunftssyntax. Standard ist NULL.

result_limit

Optionales Ergebnislimit. Standardwert ist NULL.

column_flags

Optionale Spaltenflags (z.B. FETCH_PROPERTIES, FETCH_METADATA). Standard ist 0.

Hinweis

  • RECORD-Typen beschreiben strukturierte Daten mit benannten Feldern in Datenbanken.

  • Sie müssen das Informationsschema der Datenbank, Systemkataloge oder Datenbankintrospektionstools abfragen, um die Struktur der RECORD-Typen anzuzeigen.

Prozedur GET_SCHEMAS

Bei dieser Prozedur werden alle Schemas für einen Katalog abgerufen.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Optionaler Schemaname. Standard ist NULL.

conditions

Optionale zusätzliche Bedingungen mit Herkunftssyntax. Standard ist NULL.

result_limit

Optionales Ergebnislimit. Standardwert ist NULL.

column_flags

Optionale Spaltenflags (z.B. FETCH_PROPERTIES, FETCH_METADATA). Standard ist 0.

Prozedur GET_OBJECTS

Bei dieser Prozedur werden alle Objekte für einen Katalog abgerufen.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Optionaler Schemaname. Standard ist NULL.

object_name

Optionaler Objektname. Standard ist NULL.

conditions

Optionale zusätzliche Bedingungen mit Herkunftssyntax. Standard ist NULL.

result_limit

Optionales Ergebnislimit. Standardwert ist NULL.

GENERATE_TABLE_SELECT-(Overloaded-)Prozedur

Diese Prozedur generiert eine SELECT-Anweisung für eine logische Tabelle.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Schemaname.

table_name

Tabellenname.

stmt

Die generierte SELECT-Anweisung als Ausgabe.

options

Generierungsoptionen als JSON-Objekt (z.B. eindeutig, rowLimit, auswählen, orderBy). Standardwert ist NULL.

prev_gen_sql

Die zuvor generierte SELECT-Anweisung, falls bekannt. Standardwert ist NULL.

prev_ts

Der Zeitstempel der vorherigen Generation (falls bekannt). Standardwert ist NULL.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Schemaname.

table_name

Tabellenname.

stmt

Die generierte SELECT-Anweisung als Ausgabe.

options

Generierungsoptionen als JSON-Objekt (z.B. eindeutig, rowLimit, auswählen, orderBy). Standardwert ist NULL.

prev_gen_sql

Die zuvor generierte SELECT-Anweisung, falls bekannt. Standardwert ist NULL.

prev_ts

Der Zeitstempel der vorherigen Generation (falls bekannt). Standardwert ist NULL.

Prozedur OPEN_TABLE_CURSOR

Diese Prozedur öffnet einen Cursor, der Daten aus einer logischen Tabelle zurückgibt.

Syntax

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

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Optionaler Schemaname. Standard ist NULL.

table_name

Optionaler Tabellenname. Standard ist NULL.

table_cursor

Der Cursor, der Daten zurückgibt.

options

Generiert Optionen als JSON-Objekt (z.B. rowLimit, select, orderBy). Standardwert ist NULL.

Prozedur FLUSH_CATALOG_CACHE

Mit dieser Prozedur wird der Metadatencache des Katalogs geleert.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

auto_commit

Gibt an, ob Änderungen automatisch festgeschrieben werden sollen. Der Standardwert ist TRUE.

Prozedur PREFILL_CATALOG_CACHE

Diese Prozedur füllt den Cache für den angegebenen Katalog mit aktuellen Daten.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Der Namen des Schemas.

auto_commit

Gibt an, ob Änderungen automatisch festgeschrieben werden sollen. Der Standardwert ist TRUE.

Prozedur CREATE_SYNCHRONIZED_SCHEMAS

Mit dieser Prozedur werden lokale Datenbankschemas erstellt, die mit Remotekatalogdefinitionen synchronisiert sind.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Eine durch Komma getrennte Liste mit Schemanamen (mit Anführungszeichen oder ohne Anführungszeichen). Der Standardwert ist NULL, um alle Schemas zu synchronisieren.

restrictions

JSON-Dokument, das den Geltungsbereich von Katalogentitäten angibt. Standardwert ist NULL.

Prozedur DROP_SYNCHRONIZED_SCHEMAS

Bei diesem Verfahren werden mindestens ein synchronisiertes Schema gelöscht.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

schema_name

Eine durch Komma getrennte Liste mit Schemanamen (mit Anführungszeichen oder ohne Anführungszeichen). Der Standardwert ist NULL, um alle Schemas zu synchronisieren.

restrictions

JSON-Dokument, das den Geltungsbereich von Katalogentitäten angibt. Standardwert ist NULL.

Prozedur UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY

Mit dieser Prozedur wird eine Eigenschaft von synchronisierten Schemas aktualisiert.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

property_name

Der Eigenschaftenname, der aktualisiert werden soll.

new_value

Der neue Wert als CLOB.

Prozedur GRANT_TO_RECIPIENT

Dieses Verfahren gewährt einem bestimmten Share-Empfänger Zugriff auf einen Katalog.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

recipient_name

Der Name des Share-Empfängers (erstellt von DBMS_SHARE.CREATE_SHARE_RECIPIENT).

Prozedur REVOKE_FROM_RECIPIENT

Diese Prozedur entzieht einem bestimmten Empfänger den Zugriff auf einen Katalog.

Syntax

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

Parameter

Parameter Beschreibung

catalog_name

Der Name des vorhandenen Katalogs. Dieser wird in Großbuchstaben konvertiert.

recipient_name

Der Name des Share-Empfängers (erstellt von DBMS_SHARE.CREATE_SHARE_RECIPIENT).

owner

Der Eigentümer von Katalog und Empfänger. Standard ist NULL.