Résumé de DBMS_CATALOG

Cette section couvre les sous-programmes DBMS_CATALOG fournis avec Autonomous AI Database.

Montage et démontages du catalogue

Sous-programme Description

mount_db_link

Cette procédure monte un catalogue en fonction d'un lien de base de données.

mount_shares

Cette procédure monte plusieurs catalogues à partir d'un fournisseur de partage, avec des surcharges pour prendre en charge différents types d'entrée.

mount_share

Cette procédure monte un catalogue unique en fonction d'un partage.

mount_virtual_catalog

Cette procédure crée et monte un nouveau catalogue virtuel.

mount_data_catalog

Cette procédure monte un catalogue de données tel qu'AWS GLUE ou OCI Data Catalog.

mount_iceberg

Cette procédure monte un catalogue Iceberg avec des configurations spécifiques.

démonter

Cette procédure démonte un catalogue externe existant.

Gestion des propriétés de catalogue

Sous-programme Description

get_catalog_property et get_catalog_property_clob

Ces procédures extraient les valeurs de propriété d'un catalogue.

update_catalog_property et update_catalog_property_clob

Ces procédures mettent à jour les valeurs de propriété d'un catalogue.

get_schema_property et get_schema_property_clob

Ces procédures extraient les valeurs de propriété de schéma.

update_schema_property et update_schema_property_clob

Ces procédures mettent à jour les valeurs de propriété de schéma.

get_table_property et get_table_property_clob

Ces procédures extraient les valeurs des propriétés de table.

update_table_property et update_table_property_clob

Ces procédures mettent à jour les valeurs des propriétés de table.

Gestion des informations d'identification

Sous-programme Description

add_required_credential

Cette procédure définit les informations d'identification requises pour un catalogue.

remove_required_credential

Cette procédure supprime les informations d'identification requises d'un catalogue.

rename_required_credential

Cette procédure renomme les informations d'identification requises.

update_required_credential_property

Cette procédure met à jour une propriété d'informations d'identification requises.

get_required_credential_property

Cette procédure extrait une propriété d'informations d'identification requises.

set_local_credential

Cette procédure indique des informations d'identification locales pour les informations d'identification requises.

get_local_credential_map Cette procédure extrait les mappages entre les informations d'identification requises et les informations d'identification locales, avec des surcharges pour différents formats de sortie.

Gestion des entités de catalogue

Sous-programme Description

create_cloud_storage_link et drop_cloud_storage_link

Cette procédure gère les liens de stockage cloud au sein d'un catalogue.

create_external_table

Cette procédure crée une table externe dans un catalogue.

drop_schema et drop_table

Cette procédure supprime les schémas et les tables d'un catalogue.

get_tables, get_schemas et get_objects

Cette procédure extrait les métadonnées des tables, schémas et objets d'un catalogue à l'aide de fonctions pipelinées.

Accès aux données et mise en cache

Sous-programme Description

generate_table_select

Cette procédure crée une instruction SELECT pour une table logique, avec des surcharges pour la procédure et la fonction.

open_table_cursor

Cette procédure ouvre un curseur pour renvoyer les données d'une table logique.

flush_catalog_cache et prefill_catalog_cache

Cette procédure gère la mise en cache des métadonnées de catalogue.

Synchronisation et partage

Sous-programme Description

create_synchronized_schemas et drop_synchronized_schemas

Cette procédure gère les schémas synchronisés avec les définitions de catalogue distant.

update_synchronized_schema_property

Cette procédure met à jour les propriétés des schémas synchronisés.

grant_to_recipient et revoke_from_recipient

Cette procédure gère les autorisations d'accès des destinataires du catalogue.

Procédure MOUNT_DB_LINK

Cette procédure monte un catalogue externe en fonction d'un lien de base de données.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du nouveau catalogue. Elle sera convertie en majuscules.

db_link

Lien de base de données à utiliser pour le montage du catalogue.

enabled

Indique si le catalogue est activé pour la recherche. La valeur par défaut est TRUE.

Procédure MOUNT_SHARES

Cette procédure monte plusieurs catalogues en fonction des partages d'un fournisseur de partage.

Syntaxe

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

Paramètres

Paramètre Description

share_provider:

Nom du fournisseur de partage.

shares

Tableau JSON définissant la liste des partages à monter. Chaque élément indique des propriétés telles que shareName, required, shareNameRule, catalogName, skipExisting, placeholder et enabled.

created_catalogs

Tableau JSON des catalogues nouvellement créés, renvoyé en sortie avec des propriétés telles que shareName et catalogName.

share_provider_owner

Propriétaire du fournisseur de partage. Par défaut, le catalogue actuel est défini sur NULL.

Syntaxe de la seconde procédure

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

Syntaxe de la troisième procédure

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

Paramètres de la deuxième procédure

Les paramètres sont identiques à la procédure 1, sauf sans created_catalogs.

Paramètres de la troisième procédure

Les paramètres sont identiques à la signature 1, sauf que les partages sont un CLOB avec une valeur par défaut qui inclut tous les partages.

Exemple

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

Procédure MOUNT_SHARE

Cette procédure monte un catalogue en fonction d'un partage unique.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du nouveau catalogue. Elle sera convertie en majuscules.

share_provider

Nom du fournisseur de partage.

share_name

Nom du partage à monter.

share_provider_owner

Propriétaire du fournisseur de partage. Par défaut, le catalogue actuel est défini sur NULL.

enabled

Indique si le catalogue est activé pour la recherche. La valeur par défaut est TRUE.

Exemple

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

Procédure MOUNT_VIRTUAL_CATALOG

Cette procédure crée et monte un nouveau catalogue virtuel.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du nouveau catalogue. Elle sera convertie en majuscules.

enabled

Indique si le catalogue est activé pour la recherche. La valeur par défaut est TRUE.

Procédure MOUNT_DATA_CATALOG

Cette procédure monte un catalogue de données (par exemple, AWS GLUE ou OCI Data Catalog).

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du nouveau catalogue. Elle sera convertie en majuscules.

data_catalog_type

Type de catalogue de données (par exemple, OCI_DCAT ou AWS_GLUE).

data_catalog_region

Région de ressource cloud du catalogue de données.

data_catalog_credential

Informations d'identification locales utilisées pour accéder au catalogue de données.

data_catalog_id

Nom ou identifiant du catalogue de données. La valeur par défaut est NULL.

data_storage_credential

Elle indique les informations d'identification locales pour l'accès aux données. La valeur par défaut est NULL. Ce champ est facultatif.

enabled

Indique si le catalogue est activé pour la recherche. La valeur par défaut est TRUE.

Exemple

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

Procédure MOUNT_ICEBERG

Cette procédure monte un catalogue Iceberg.

Syntaxe

Pour plus d'informations sur le catalogue Iceberg, reportez-vous à Spécification de catalogue 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'
);

Paramètres

Paramètre Description

catalog_name

Nom du nouveau catalogue. Elle sera convertie en majuscules.

endpoint

URL du serveur de base Iceberg.

catalog_credential

Informations d'identification utilisées pour accéder au catalogue Iceberg.

data_storage_credential

Informations d'identification utilisées pour accéder aux données.

configuration

La configuration de catalogue est décrite comme un objet JSON.

Les configurations prises en charge sont les suivantes :
  • namespacePath : la valeur par défaut est NULL.
  • namespaceSeparator : la valeur par défaut est le point (.) pour Unity, %1F pour les autres catalogues Iceberg.
  • isCaseSensitive : la valeur par défaut est FALSE pour Unity, TRUE pour les autres catalogues Iceberg)
  • isPublicCatalog : la valeur par défaut est FALSE.
  • bucketRegion : la valeur par défaut est NULL. Elle n'est pertinente que si le catalogue utilise le stockage S3.
enabled

Indique si le catalogue est activé pour la recherche. La valeur par défaut est TRUE.

catalog_type

Type de catalogue d'icebergs (par exemple, ICEBERG_GENERIC, ICEBERG_POLARIS, ICEBERG_UNITY). La valeur par défaut est ICEBERG_GENERIC.

Exemple

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

Procédure UNMOUNT

Cette procédure permet de démonter un catalogue externe.

Syntaxe

PROCEDURE unmount
(
  catalog_name IN VARCHAR2
);

Paramètres

Paramètre Description

catalog_name

Nom d'un catalogue existant à démonter. Elle sera convertie en majuscules.

Procédure GET_CATALOG_PROPERTY

Cette procédure renvoie la valeur d'une propriété pour un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

catalog_property

Il décrit la propriété à extraire (par exemple, PROP_CACHE_DURATION, PROP_IS_ENABLED).

La valeur peut être l'une des constantes suivantes :
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Pour plus d'informations, voir Types de catalogue et constantes.

Procédure GET_CATALOG_PROPERTY_CLOB

Cette procédure renvoie la valeur d'une propriété pour un catalogue au format CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

catalog_property

Elle décrit la propriété à extraire (par exemple, PROP_CACHE_DURATION, PROP_IS_ENABLED).

La valeur peut être l'une des constantes suivantes :
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DCAT_TYPE
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Pour plus d'informations, voir Types de catalogue et constantes.

Procédure UPDATE_CATALOG_PROPERTY

Cette procédure met à jour la valeur d'une propriété pour un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

catalog_property

Elle décrit la propriété à mettre à jour (par exemple, PROP_CACHE_DURATION, PROP_IS_ENABLED).

La valeur peut être l'une des constantes suivantes :
  • PROP_CACHE_ASYNC
  • PROP_CACHE_DURATION
  • PROP_CACHE_ENABLED
  • PROP_CONFIGURATION
  • PROP_CUSTOM
  • PROP_DEFAULT_SCHEMA
  • PROP_IS_ENABLED
  • PROP_METADATA

Pour plus d'informations, voir Types de catalogue et constantes.

new_value

Nouvelle valeur de propriété.

Procédure UPDATE_CATALOG_PROPERTY_CLOB

Cette procédure met à jour la valeur d'une propriété pour un catalogue dans CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

catalog_property

Elle décrit la propriété à extraire (par exemple, PROP_CACHE_DURATION, PROP_IS_ENABLED).

new_value

Nouvelle valeur de propriété dans CLOB.

Procédure UPDATE_TABLE_PROPERTY_CLOB

Cette procédure met à jour la valeur d'une propriété pour une table au format CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

table_property

Propriété à mettre à jour.

new_value

Nouvelle valeur de propriété dans CLOB.

Procédure GET_SCHEMA_PROPERTY

Cette procédure renvoie la valeur d'une propriété pour un schéma.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

schema_property

Elle décrit la propriété à extraire (par exemple, PROP_CUSTOM, PROP_METADATA).

Procédure GET_SCHEMA_PROPERTY_CLOB

Cette procédure renvoie la valeur d'une propriété pour un schéma au format CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

schema_property

Elle décrit la propriété à extraire (par exemple, PROP_CUSTOM, PROP_METADATA).

Procédure UPDATE_SCHEMA_PROPERTY

Cette procédure renvoie la valeur d'une propriété pour un schéma.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

schema_property

Elle décrit la propriété à extraire (par exemple, PROP_CUSTOM, PROP_METADATA).

new_value

Nouvelle valeur de propriété.

Procédure GET_TABLE_PROPERTY

Cette procédure renvoie la valeur d'une propriété pour une table.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_property

Propriété à extraire.

table_name

Nom de la table.

Procédure GET_TABLE_PROPERTY_CLOB

Cette procédure renvoie la valeur d'une propriété pour une table au format CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

table_property

Propriété à mettre à jour (par exemple, PROP_CUSTOM).

Procédure UPDATE_TABLE_PROPERTY

Cette procédure met à jour la valeur d'une propriété pour une table.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

table_property

Propriété à mettre à jour.

new_value

Nouvelle valeur de propriété.

Procédure UPDATE_TABLE_PROPERTY_CLOB

Cette procédure met à jour la valeur d'une propriété pour une table au format CLOB.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

table_property

Propriété à mettre à jour.

new_value

Nouvelle valeur de propriété dans CLOB.

Procédure ADD_REQUIRED_CREDENTIAL

Cette procédure définit les informations d'identification requises pour utiliser le catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

required_credential

Nom des informations d'identification requises.

local_credential

Il s'agit d'informations d'identification locales facultatives à utiliser. La valeur par défaut est NULL.

credential_type

Ce champ est facultatif. Ce paramètre spécifie le type de mécanisme d'authentification utilisé pour accéder à des services externes, tels que le stockage d'objets ou d'autres bases de données. Par exemple, oci, aws, azure ou slack_credential.

Pour plus d'informations, voir Types de catalogue et constantes.

Procédure REMOVE_REQUIRED_CREDENTIAL

Cette procédure supprime les informations d'identification requises d'un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

required_credential

Nom des informations d'identification requises à enlever.

Procédure RENAME_REQUIRED_CREDENTIAL

Cette procédure renomme les informations d'identification requises à partir d'un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

old_credential_name

Ancien nom des informations d'identification requises.

new_credential_name

Nouveau nom des informations d'identification requises.

Procédure UPDATE_REQUIRED_CREDENTIAL_PROPERTY

Cette procédure met à jour une propriété d'informations d'identification requises nommées.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

required_credential

Nom des informations d'identification requises.

credential_property

Nom de la propriété (par exemple, PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET).

new_value

Nouvelle valeur de la propriété.

Procédure GET_REQUIRED_CREDENTIAL_PROPERTY

Cette procédure extrait une propriété d'informations d'identification requises nommées.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

required_credential

Nom des informations d'identification requises.

credential_property

Nom de la propriété (par exemple, PROP_REQUIRED_CREDENTIAL_DESCRIPTION, PROP_REQUIRED_CREDENTIAL_VAULT_SECRET).

Procédure SET_LOCAL_CREDENTIAL

Cette procédure indique les informations d'identification locales à utiliser lors de l'utilisation d'un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

required_credential

Nom des informations d'identification requises.

local_credential

Informations d'identification à utiliser.

Procédure GET_LOCAL_CREDENTIAL_MAP (surchargée)

Cette procédure extrait une correspondance entre les informations d'identification requises et les informations d'identification locales.

Syntaxe 1

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

credential_map

Mappage rempli des informations d'identification.

Syntaxe 2

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant.

show_errors

Des messages d'erreur s'affichent pour les informations d'identification locales non valides. La valeur par défaut est 0.

pretty_json

Formatez le fichier JSON avec l'option PRETTY. La valeur par défaut est 0.

Syntaxe 3

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

Paramètres

Paramètre Description

catalog_id

ID d'un catalogue existant de la colonne CATALOG_ID dans ALL_MOUNTED_CATALOGS.

credential_map

Correspondance renseignée en tant qu'objet JSON.

Procédure CREATE_CLOUD_STORAGE_LINK

Cette procédure crée un lien de stockage cloud dans un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name:

Nom du schéma.

storage_link_name

Nom du lien de stockage.

uri

URI de bucket.

required_credential

Informations d'identification requises (ou NULL pour les buckets publics).

La valeur par défaut est NULL.

enabled

Indique si le lien de stockage est activé pour la recherche. La valeur par défaut est TRUE.

replace_if_exists

Remplacez le lien s'il existe déjà. La valeur par défaut est FALSE.

Procédure DROP_CLOUD_STORAGE_LINK

Cette procédure supprime un lien de stockage cloud d'un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name:

Nom du schéma.

storage_link_name

Nom du lien de stockage.

Procédure CREATE_EXTERNAL_TABLE

Cette procédure crée une table externe dans un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

storage_link_name

Nom du lien de stockage.

file_uri_list

Liste de fichiers relatifs en tant qu'objet CLOB.

column_list

Liste de colonnes facultative. La valeur par défaut est NULL.

field_list

Liste de champs facultatifs. La valeur par défaut est NULL.

table_format

Informations de format facultatives. La valeur par défaut est NULL.

credential_name

Informations d'identification requises. La valeur par défaut est NULL.

replace_if_exists

Remplacez la table si elle existe déjà. La valeur par défaut est FALSE.

Procédure DROP_SCHEMA

Cette procédure supprime un schéma d'un catalogue avec tout son contenu.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name:

Nom de schéma à supprimer.

Procédure DROP_TABLE

Cette procédure supprime une table d'un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

Procédure CREATE_SCHEMA

Cette procédure crée un schéma dans un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

Procédure GET_TABLES

Cette procédure extrait toutes les tables d'un catalogue.

Syntaxe

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;

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom de schéma facultatif. La valeur par défaut est NULL.

table_name

Nom de table facultatif. La valeur par défaut est NULL.

conditions

Conditions supplémentaires facultatives utilisant la syntaxe de lignage. La valeur par défaut est NULL.

result_limit

Limite de résultats facultative. La valeur par défaut est NULL.

column_flags

Indicateurs de colonne facultatifs (par exemple, FETCH_PROPERTIES, FETCH_METADATA). La valeur par défaut est 0.

Remarque

  • Les types RECORD décrivent les données structurées avec des champs nommés dans les bases de données.

  • Vous devez interroger le schéma d'informations de la base de données, les catalogues système ou utiliser des outils d'introspection de base de données pour voir la structure des types RECORD.

Procédure GET_SCHEMAS

Cette procédure extrait tous les schémas d'un catalogue.

Syntaxe

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;

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom de schéma facultatif. La valeur par défaut est NULL.

conditions

Conditions supplémentaires facultatives utilisant la syntaxe de lignage. La valeur par défaut est NULL.

result_limit

Limite de résultats facultative. La valeur par défaut est NULL.

column_flags

Indicateurs de colonne facultatifs (par exemple, FETCH_PROPERTIES, FETCH_METADATA). La valeur par défaut est 0.

Procédure GET_OBJECTS

Cette procédure extrait tous les objets d'un catalogue.

Syntaxe

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;

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom de schéma facultatif. La valeur par défaut est NULL.

object_name

Nom d'objet facultatif. La valeur par défaut est NULL.

conditions

Conditions supplémentaires facultatives utilisant la syntaxe de lignage. La valeur par défaut est NULL.

result_limit

Limite de résultats facultative. La valeur par défaut est NULL.

Procédure GENERATE_TABLE_SELECT (surchargée)

Cette procédure génère une instruction SELECT pour une table logique.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

stmt

L'instruction SELECT générée en sortie.

options

Options de génération en tant qu'objet JSON (par exemple, distinct, rowLimit, select, orderBy). La valeur par défaut est NULL.

prev_gen_sql

Instruction SELECT générée précédemment, si elle est connue. La valeur par défaut est NULL.

prev_ts

Horodatage de la génération précédente, le cas échéant. La valeur par défaut est NULL.

Syntaxe

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;

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

table_name

Nom de la table.

stmt

L'instruction SELECT générée en sortie.

options

Options de génération en tant qu'objet JSON (par exemple, distinct, rowLimit, select, orderBy). La valeur par défaut est NULL.

prev_gen_sql

Instruction SELECT générée précédemment, si elle est connue. La valeur par défaut est NULL.

prev_ts

Horodatage de la génération précédente, le cas échéant. La valeur par défaut est NULL.

Procédure OPEN_TABLE_CURSOR

Cette procédure ouvre un curseur qui renvoie les données d'une table logique.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom de schéma facultatif. La valeur par défaut est NULL.

table_name

Nom de table facultatif. La valeur par défaut est NULL.

table_cursor

Curseur permettant de renvoyer des données.

options

Génère des options en tant qu'objet JSON (par exemple, rowLimit, select, orderBy). La valeur par défaut est NULL.

Procédure FLUSH_CATALOG_CACHE

Cette procédure vide le cache de métadonnées du catalogue,

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

auto_commit

Indique si les modifications doivent être validées automatiquement. La valeur par défaut est TRUE.

Procédure PREFILL_CATALOG_CACHE

Cette procédure remplit le cache du catalogue spécifié avec les données actuelles.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Nom du schéma.

auto_commit

Indique si les modifications doivent être validées automatiquement. La valeur par défaut est TRUE.

Procédure CREATE_SYNCHRONIZED_SCHEMAS

Cette procédure crée des schémas de base de données locaux synchronisés avec des définitions de catalogue distant.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Liste de noms de schéma séparés par des virgules (entre guillemets ou sans guillemets). La valeur par défaut est NULL pour synchroniser tous les schémas.

restrictions

Document JSON indiquant la portée des entités de catalogue. La valeur par défaut est NULL.

Procédure DROP_SYNCHRONIZED_SCHEMAS

Cette procédure supprime un ou plusieurs schémas synchronisés.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

schema_name

Liste de noms de schéma séparés par des virgules (entre guillemets ou sans guillemets). La valeur par défaut est NULL pour synchroniser tous les schémas.

restrictions

Document JSON indiquant la portée des entités de catalogue. La valeur par défaut est NULL.

Procédure UPDATE_SYNCHRONIZED_SCHEMA_PROPERTY

Cette procédure met à jour une propriété de schémas synchronisés.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

property_name

Nom de propriété à mettre à jour.

new_value

Nouvelle valeur en tant qu'OBCL.

Procédure GRANT_TO_RECIPIENT

Cette procédure permet d'accorder l'accès à un destinataire de partage spécifique sur un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

recipient_name

Nom du destinataire du partage (créé par DBMS_SHARE.CREATE_SHARE_RECIPIENT).

Procédure REVOKE_FROM_RECIPIENT

Cette procédure révoque l'accès d'un destinataire spécifique à un catalogue.

Syntaxe

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

Paramètres

Paramètre Description

catalog_name

Nom du catalogue existant. Elle sera convertie en majuscules.

recipient_name

Nom du destinataire du partage (créé par DBMS_SHARE.CREATE_SHARE_RECIPIENT).

owner

Propriétaire du catalogue et du destinataire. La valeur par défaut est NULL.