Resumen de subprogramas de consumo compartido

En esta tabla, se muestran los procedimientos y las funciones del paquete DBMS_SHARE que se utilizan para consumir recursos compartidos.

Subprogramas Descripción
Procedimiento ASSERT_SHARING_ID Ejecute comprobaciones de validación básicas con un ID de uso compartido y devuelva uno en forma canónica.
Procedimiento y función CREATE_CREDENTIALS Cree una credencial que contenga el token de portador a partir de un perfil delta.
Procedimiento CREATE_OR_REPLACE_SHARE_LINK Suscríbase para compartir con un proveedor de recursos compartidos registrado.
Procedimiento CREATE_OR_REPLACE_ORACLE_SHARE_PROVIDER Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.
Procedimiento CREATE_ORACLE_SHARE_PROVIDER Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.
Procedimiento CREATE_SHARE_LINK Suscríbase para compartir con un proveedor de recursos compartidos registrado.
Procedimiento CREATE_SHARE_LINK_VIEW Crear o sustituir una vista con nombre que proporcione acceso a una tabla compartida remota.
Procedimiento CREATE_SHARE_PROVIDER Suscribirse a un proveedor de recursos compartidos delta.
Función DISCOVER_AVAILABLE_SHARES Devuelva un SHARE_AVAILABLE_SHARES_ROW por cada tabla disponible de los proveedores de recursos compartidos suscritos.
Función DISCOVER_AVAILABLE_TABLES Devuelva un SHARE_AVAILABLE_TABLES_ROW por cada tabla disponible desde los proveedores de recursos compartidos suscritos o desde un punto final delta explícito.
Procedimiento DROP_SHARE_LINK Borre un enlace de recurso compartido creado por el procedimiento CREATE_SHARE_LINK.
Procedimiento DROP_SHARE_PROVIDER Borrar una suscripción a un proveedor de recursos compartidos.
Procedimiento ENABLE_DELTA_ENDPOINT Cree las ACL necesarias que permitan al usuario especificado conectarse a un punto final delta.
Procedimiento FLUSH_SHARE_LINK_CACHE Vacíe la caché de recursos compartidos para un enlace de recursos compartidos determinado.
Procedimiento FLUSH_SHARE_PROVIDER_CACHE Vacíe la caché de recursos compartidos para un proveedor de recursos compartidos determinado.
GENERATE_SHARE_LINK_SELECT Procedimiento y función Generar una sentencia SELECT que devuelva datos de una tabla compartida.
Función GET_ORACLE_SHARE_LINK_INFO Recupere el nombre y el espacio de nombres del enlace en la nube para un recurso compartido de Oracle a Oracle.
Procedimiento GET_SHARE_LINK_INFO Obtenga los puntos finales, el tipo de recurso compartido y el nombre del recurso compartido junto con los metadatos JSON adicionales para un enlace de recurso compartido.
Procedimiento GET_SHARE_PROVIDER_CREDENTIAL Obtenga el nombre de credencial que utilizará el usuario actual cuando intente acceder al proveedor de recursos compartidos delta proporcionado.
Procedimiento GET_SHARE_PROVIDER_INFO Obtenga las cadenas de punto final y el tipo de recurso compartido junto con los metadatos JSON adicionales para un proveedor de recursos compartidos.
Función GET_SHARING_ID Devuelve un identificador que se puede utilizar como sharing_id en el procedimiento CREATE_SHARE_RECIPIENT.
Procedimiento OPEN_SHARE_LINK_CURSOR Abra un cursor que devuelva datos de una tabla compartida.
Procedimiento REFRESH_BEARER_TOKEN_CREDENTIAL Actualice una o más credenciales creadas por CREATE_BEARER_TOKEN_CREDENTIAL o CREATE_CREDENTIALS.
Procedimiento RENAME_CLOUD_STORAGE_LINK Cambie el nombre de un enlace de almacenamiento en la nube registrado.
Procedimiento RENAME_SHARE_LINK Cambie el nombre de un enlace compartido registrado.
Procedimiento RENAME_SHARE_PROVIDER Cambiar el nombre de un proveedor de recursos compartidos registrado.
Procedimiento REMOVE_SHARE_SCHEMA Elimine un esquema y todo su contenido de un recurso compartido.
Procedimiento SET_SHARE_LINK_METADATA Defina los metadatos JSON adicionales para el enlace de recurso compartido.
Procedimiento SET_SHARE_PROVIDER_CREDENTIAL Defina el nombre de la credencial para acceder al proveedor de recursos compartidos proporcionado.
Procedimiento SET_SHARE_PROVIDER_METADATA Defina metadatos JSON adicionales para el proveedor de recursos compartidos.
Procedimiento UPDATE_BEARER_TOKEN_CREDENTIAL Modificar un atributo de una credencial creada por CREATE_CREDENTIALS o CREATE_BEARER_TOKEN_CREDENTIAL.

ASSERT_SHARING_ID Procedimiento

Ejecute comprobaciones de validación básicas con un ID de uso compartido y devuelva uno en forma canónica. Se emite una excepción si el ID es obviamente no válido.

Sintaxis

PROCEDURE ASSERT_SHARING_ID
(
    sharing_id              IN OUT NOCOPY VARCHAR2,
    out_sharing_id_type     IN OUT NOCOPY VARCHAR2
);

Parámetros

Parámetro Descripción
sharing_id ID que se va a comprobar.
out_sharing_id_type El tipo de ID, si es válido. Por ejemplo, TENANCY o DATABASE.

CREATE_CREDENTIALS Procedimiento y función

Cree una credencial que contenga el token de portador desde un perfil de uso compartido delta. El tipo estándar, versión 1, especifica un punto final y un único token portador a largo plazo.

Sintaxis

PROCEDURE CREATE_CREDENTIALS
(
    credential_base_name IN VARCHAR2,
    delta_profile        IN CLOB,
    out_credential_name  IN OUT NOCOPY VARCHAR2
);

A continuación se muestra la versión funcional de create_credentials que devuelve el nombre de las nuevas credenciales en formato JSON.

FUNCTION CREATE_CREDENTIALS
(
   credential_base_name IN VARCHAR2,
   delta_profile        IN CLOB
)
RETURN CLOB;

Parámetros

Parámetro Descripción
credential_base_name Nombre base de las credenciales que se van a crear.
delta_profile Perfil de uso compartido delta, en formato JSON, obtenido del proveedor de recursos compartidos.
{ "shareCredentialsVersion": 1, "endpoint": "https://", "bearerToken": "", "expirationTime": "...", }

El perfil también puede incluir, opcionalmente, una propiedad tokenEndpoint junto con clientID y clientSecret.

{ "shareCredentialsVersion": 1, "endpoint": "https://", "bearerToken": "", "expirationTime": "...", "tokenEndpoint": "https://", "clientID": "", "clientSecret": "" }

Consulte Formato de archivo de perfil y Token de portador para obtener más información.

out_credential_name Nombre de la credencial de token de portador recién creada.

CREATE_OR_REPLACE_SHARE_LINK Procedimiento

Suscríbase para compartir con un proveedor de recursos compartidos registrado.

Sintaxis

PROCEDURE CREATE_OR_REPLACE_SHARE_LINK
(
    share_link_name        IN VARCHAR2,
    share_provider         IN VARCHAR2,
    share_name             IN VARCHAR2,
    provider_owner         IN VARCHAR2 := NULL,
    link_owner             IN VARCHAR2 := NULL,
    use_default_credential IN BOOLEAN := TRUE,
    metadata               IN SYS.JSON_OBJECT_T := NULL,
    auto_commit            IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
share_link_name Nombre del enlace de recurso compartido que se creará. Los nombres de recursos compartidos disponibles se pueden encontrar llamando a la función DISCOVER_AVAILABLE_SHARES.
share_provider Nombre del proveedor de recursos compartidos registrado.
share_name El nombre del recurso compartido del proveedor del recurso compartido.
provider_owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.
link_owner Propietario del enlace de recurso compartido. El valor por defecto es el esquema actual.
use_default_credential Si es TRUE, utilice las mismas credenciales que el proveedor de recursos compartidos.
metadata Metadatos opcionales para asociar con el enlace de recurso compartido.
auto_commit Si es TRUE (valor por defecto), esta llamada de procedimiento confirma los cambios que no están visibles externamente hasta que se realiza la confirmación. Si es FALSE, el usuario debe COMMIT después de ejecutar esta llamada para que el cambio esté visible.

CREATE_OR_REPLACE_ORACLE_SHARE_PROVIDER Procedimiento

Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.

A continuación, aparecerá en la vista ALL_SHARE_PROVIDERS con RECIPIENT_TYPE = 'ORACLE'.

Nota

Nota: Utilice el procedimiento SET_STORAGE_CREDENTIAL para agregar una credencial al enlace de almacenamiento. Consulte SET_STORAGE_CREDENTIAL Procedure.

Sintaxis

PROCEDURE CREATE_OR_REPLACE_CLOUD_STORAGE_LINK
(
    storage_link_name    IN VARCHAR2,
    uri                  IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    metadata             IN SYS.JSON_OBJECT_T := NULL,
    auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
storage_link_name Nombre del enlace de almacenamiento en la nube. El nombre del enlace debe seguir las convenciones de nomenclatura estándar de Oracle. Consulte Nombres y cualificadores de objeto de base de Datos
uri URI del cubo de almacenamiento. El URI debe tener el formato https://objectstorage.region.oraclecloud.com/n/namespace-string/b/bucket/o
owner Propietario del enlace de almacenamiento. El valor por defecto es el esquema actual.
metadata Documento de metadatos JSON opcional que contiene información adicional.
auto_commit Si es TRUE, los cambios se confirman automáticamente después de crear el enlace. El valor por defecto es TRUE.

CREATE_ORACLE_SHARE_PROVIDER Procedimiento

Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.

A continuación, aparecerá en la vista ALL_SHARE_PROVIDERS con RECIPIENT_TYPE = 'ORACLE'.

Sintaxis

PROCEDURE CREATE_ORACLE_SHARE_PROVIDER
(
    oracle_provider_id   IN VARCHAR2,
    provider_name        IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    metadata             IN SYS.JSON_OBJECT_T := NULL,
    auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
oracle_provider_id El ID de proveedor obtenido de la vista ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS. Consulte ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS View.
provider_name Un nombre local para el proveedor
owner Propietario del nuevo proveedor de recursos compartidos. Dejar como NULL para el usuario actual.
metadata Metadatos JSON opcionales para asociar al proveedor.
auto_commit Si es TRUE, los cambios se confirman automáticamente después de crear el enlace. El valor por defecto es TRUE.

CREATE_SHARE_LINK Procedimiento

Suscríbase para compartir con un proveedor de recursos compartidos registrado. Los nombres de recursos compartidos disponibles se pueden encontrar llamando a DISCOVER_AVAILABLE_SHARES.

Sintaxis

PROCEDURE CREATE_SHARE_LINK
(
    share_link_name      IN VARCHAR2,
    share_provider       IN VARCHAR2,
    share_name           IN VARCHAR2,
    provider_owner       IN VARCHAR2 := NULL,
    link_owner           IN VARCHAR2 := NULL,
    use_default_credential IN BOOLEAN := TRUE,
    metadata             IN SYS.JSON_OBJECT_T := NULL,
    auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
share_link_name Nombre del enlace de recurso compartido que se va a crear. Debe seguir las convenciones de nomenclatura estándar de Oracle y no es necesario que sea el mismo que el parámetro share_name.
share_provider Nombre del proveedor de recursos compartidos, que se muestra en ALL_SHARE_PROVIDERS, que compartió los datos.
share_name El nombre del recurso compartido, según lo definido por el proveedor del recurso compartido.
provider_owner Esquema que suscribió el proveedor de recursos compartidos, como se muestra en ALL_SHARE_PROVIDER. Deje como nulo el valor por defecto para el usuario actual, que es típico.
link_owner Propietario del nuevo enlace de recurso compartido. Deje como nulo el valor por defecto para el usuario actual, que es típico.
use_default_credential Establézcalo en Verdadero para utilizar la misma credencial tanto para el enlace de recurso compartido como para el proveedor de recursos compartidos.
metadata Metadatos JSON opcionales para asociar al enlace de recurso compartido.
auto_commit Si es TRUE, los cambios se confirman automáticamente después de crear el enlace. El valor por defecto es TRUE.

CREATE_SHARE_LINK_VIEW Procedimiento

Crear o sustituir una vista con nombre que proporcione acceso a una tabla compartida remota.

Sintaxis

PROCEDURE CREATE_SHARE_LINK_VIEW
(
    view_name            IN VARCHAR2,
    share_link_name      IN VARCHAR2,
    share_schema_name    IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    view_owner           IN VARCHAR2 := NULL,
    share_link_owner     IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
view_name Nombre de la nueva vista.
share_link_name Nombre del enlace de recurso compartido.
share_schema_name Nombre del esquema compartido.
share_table_name El nombre de la tabla compartida.
view_owner El propietario de la vista. El valor por defecto es el esquema actual.
share_link_owner El propietario del enlace. El valor por defecto es el esquema actual.

CREATE_SHARE_PROVIDER Procedimiento

Suscribirse a un proveedor de recursos compartidos delta.

Sintaxis

PROCEDURE CREATE_SHARE_PROVIDER
(
  provider_name        IN VARCHAR2,
  endpoint             IN VARCHAR2,
  token_endpoint       IN VARCHAR2 := NULL,
  share_type           IN VARCHAR2 := 'DELTA',
  owner                IN VARCHAR2 := NULL,
  metadata             IN SYS.JSON_OBJECT_T := NULL,
  auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
provider_name El nombre local de este proveedor de recursos compartidos.
endpoint Punto final delta, del perfil de uso compartido delta.
token_endpoint Este parámetro se ignora.
share_type Tipo de proveedor de recursos compartidos. Deja esto como DELTA.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.
metadata Metadatos JSON opcionales para asociar al proveedor de recursos compartidos.
auto_commit Si es TRUE (valor por defecto), esta llamada de procedimiento confirma los cambios que no están visibles externamente hasta que se realiza la confirmación. Si es FALSE, el usuario debe COMMIT después de ejecutar esta llamada para que el cambio esté visible.

Función DISCOVER_AVAILABLE_SHARES

Devuelva un SHARE_AVAILABLE_SHARES_ROW por cada tabla disponible de los proveedores de recursos compartidos suscritos.

Sintaxis

FUNCTION DISCOVER_AVAILABLE_SHARES
(
    share_provider       IN VARCHAR2,
    owner                IN VARCHAR2 := NULL
) RETURN share_available_shares_tbl PIPELINED;

Parámetros

Parámetro Descripción
share_provider El nombre del proveedor de recursos compartidos.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.

Ejemplo: detección de una lista de recursos compartidos disponibles de un proveedor determinado

SQL> select available_share_name
  2    from dbms_share.discover_available_shares('share_prov')
  3   order by available_share_name;

AVAILABLE_SHARE_NAME
--------------------------------------------------------------------------------
BURLINGTON_EXPEDITION_2022

EGYPT_EXPEDITION_2022

Función DISCOVER_AVAILABLE_TABLES

Devuelva un SHARE_AVAILABLE_TABLES_ROW por cada tabla disponible de los proveedores de recursos compartidos suscritos.

Sintaxis

FUNCTION DISCOVER_AVAILABLE_TABLES
(
  share_provider       IN VARCHAR2 := NULL,
  share_name           IN VARCHAR2 := NULL,
  owner                IN VARCHAR2 := NULL,
  endpoint             IN VARCHAR2 := NULL,
  credential_name      IN VARCHAR2 := NULL
) RETURN share_available_tables_tbl PIPELINED;

Parámetros

Parámetro Descripción
share_provider Un nombre de proveedor de recursos compartidos opcional. Si es NULL, busque todos los proveedores de recursos compartidos suscritos.
share_name Un nombre de recurso compartido opcional. Si es NULL, busque todos los recursos compartidos detectados.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.
endpoint Punto final delta opcional.
credential_name Credencial de token de portador opcional para acceder al punto final.

Ejemplo: lista de recursos compartidos disponibles de todos los proveedores de recursos compartidos suscritos

select * from dbms_share.discover_available_tables()
  2  order by share_name, schema_name, table_name;

 PROVIDER_NAME             PROVIDER_OWNER  SHARE_NAME
------------------------- --------------- ------------------------------
SCHEMA_NAME               TABLE_NAME
------------------------- -------------------------
My Test Oracle Provider   ADP_SHARE_TEST  BURLINGTON_EXPEDITION_2022
SH                        COUNTRIES

My Test Oracle Provider   ADP_SHARE_TEST  BURLINGTON_EXPEDITION_2022
SH                        SH_COUNTRIES

My Test Oracle Provider   ADP_SHARE_TEST  EGYPT_EXPEDITION_2022
SHARED_SCHEMA             SHARED_VIEW_1

My Test Oracle Provider   ADP_SHARE_TEST  EGYPT_EXPEDITION_2022
SHARED_SCHEMA             SHARED_VIEW_2

Ejemplo: lista de tablas disponibles desde un punto final no suscrito

SQL> exec dbms_cloud.create_credential('MY_CRED', 'BEARER_TOKEN', '123456')
PL/SQL procedure successfully completed.
SQL> column share_name format a13
SQL> column table_name format a20
SQL> column schema_name format a10
SQL> select share_name, schema_name, table_name
2   from dbms_share.discover_available_tables(
3     endpoint=>'https://my_endpoint',
4     credential_name=>'MY_CRED')
5   order by 1, 2, 3;

SHARE_NAME SCHEMA_NAM TABLE_NAME
------------- ---------- --------------------
DELTA_SHARING DEFAULT BOSTON-HOUSING
DELTA_SHARING DEFAULT COVID_19_NYT
DELTA_SHARING DEFAULT FLIGHT-ASA_2008
DELTA_SHARING DEFAULT LENDING_CLUB
DELTA_SHARING DEFAULT NYCTAXI_2019
DELTA_SHARING DEFAULT NYCTAXI_2019_PART
DELTA_SHARING DEFAULT OWID-COVID-DATA

7 rows selected.

DROP_SHARE_LINK Procedimiento

Borre un enlace de recurso compartido creado por el procedimiento CREATE_SHARE_LINK.

Consulte Procedimiento CREATE_SHARE_LINK para obtener más información.

Sintaxis

PROCEDURE DROP_SHARE_LINK
(
    link_name            IN VARCHAR2,
    link_owner           IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
link_name Nombre del enlace compartido que se va a borrar.
link_owner Propietario del enlace compartido que se va a borrar. Deje el valor nulo para el esquema actual.

DROP_SHARE_PROVIDER Procedimiento

Borrar una suscripción a un proveedor de recursos compartidos.

Sintaxis

PROCEDURE DROP_SHARE_PROVIDER
(
    provider_name        IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    drop_credentials     IN BOOLEAN := FALSE
);

Parámetros

Parámetro Descripción
provider_name Nombre del proveedor de recursos compartidos que se va a borrar.
owner El propietario del proveedor de recursos compartidos que se va a distribuir. El valor por defecto es el esquema actual.
drop_credentials Si es TRUE, se borran todas las credenciales asociadas al proveedor. Si es FALSE, las credenciales no se borran.

ENABLE_DELTA_ENDPOINT Procedimiento

Cree las ACL necesarias que permitan al usuario especificado conectarse a un punto final delta. Los privilegios de administrador son necesarios para este procedimiento.

Sintaxis

PROCEDURE ENABLE_DELTA_ENDPOINT
(
    schema_name          IN VARCHAR2,
    delta_profile        IN CLOB,
    enabled              IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
schema_name Esquema que activar o desactivar.
delta_profile El perfil delta. Solo se necesitan el punto final y tokenEndpoint.
enabled TRUE (verdadero) para activar y FALSE (falso) para desactivar.

FLUSH_SHARE_LINK_CACHE Procedimiento

Vacíe la caché de recursos compartidos para un enlace de recursos compartidos determinado. La lista de recursos compartidos para los puntos finales remotos se recupera en lugar de depender de valores almacenados en caché.

Sintaxis

PROCEDURE FLUSH_SHARE_LINK_CACHE
(
    link_name            IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
link_name Nombre del enlace de recurso compartido.
owner Propietario del enlace de recurso compartido. El valor por defecto es el esquema actual.
auto_commit Si es TRUE, los cambios se confirman automáticamente. El valor por defecto es TRUE.

FLUSH_SHARE_PROVIDER_CACHE Procedimiento

Vacíe la caché de recursos compartidos para un proveedor de recursos compartidos determinado. La lista de recursos compartidos para los puntos finales remotos se recupera en lugar de depender de valores almacenados en caché.

Sintaxis

PROCEDURE FLUSH_SHARE_PROVIDER_CACHE
(
  provider_name        IN VARCHAR2,
  owner                IN VARCHAR2 := NULL,
  auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
provider_name El nombre del proveedor de recursos compartidos.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.
auto_commit Si es TRUE, los cambios se confirman automáticamente. El valor por defecto es TRUE.

GENERATE_SHARE_LINK_SELECT Procedimiento y función

Generar una sentencia SELECT que devuelva datos de una tabla compartida.

Sintaxis

Versión de procedimiento de GENERATE_SHARE_LINK_SELECT.

PROCEDURE GENERATE_SHARE_LINK_SELECT
(
    share_link_name      IN VARCHAR2,
    share_schema_name    IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    stmt                 IN OUT NOCOPY CLOB,
    share_link_owner     IN VARCHAR2 := NULL
);

Versión de función de GENERATE_SHARE_LINK_SELECT.

 FUNCTION GENERATE_SHARE_LINK_SELECT
(
    share_link_name      IN VARCHAR2,
    share_schema_name    IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    share_link_owner     IN VARCHAR2 := NULL
)
RETURN CLOB;

Parámetros

Parámetro Descripción
share_link_name Nombre del enlace de recurso compartido.
share_schema_name Nombre del esquema compartido.
share_table_name El nombre de la tabla compartida.
stmt El extracto de selección generado.
share_link_owner El propietario del enlace. El valor por defecto es el esquema actual.

Función GET_ORACLE_SHARE_LINK_INFO

Recupere el nombre y el espacio de nombres del enlace en la nube para un recurso compartido de Oracle a Oracle.

Sintaxis

FUNCTION GET_ORACLE_SHARE_LINK_INFO
(
  oracle_provider_id   IN VARCHAR2,
  share_name           IN VARCHAR2,
  share_schema_name    IN VARCHAR2,
  share_table_name     IN VARCHAR2
)
RETURN CLOB;

Parámetros

Parámetro Descripción
oracle_provider_id El ID del proveedor de Oracle de ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS.
share_name Nombre de un recurso compartido de ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS.SHARES.
share_schema_name Nombre de un esquema de recurso compartido de ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS.SHARES.
share_table_name Nombre de una tabla de ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS.SHARES.

Intro

El valor de retorno es un objeto JSON que contiene tres propiedades: esquema, tabla y dblink. El emisor de llamada puede utilizar estas tres propiedades para recuperar datos mediante una consulta del siguiente formulario:

SELECT *
FROM <schema>.<table>@<dblink>

GET_SHARE_LINK_INFO Procedimiento

Obtenga los puntos finales, el tipo de recurso compartido y el nombre del recurso compartido junto con los metadatos JSON adicionales para un enlace de recurso compartido.

Sintaxis

PROCEDURE GET_SHARE_LINK_INFO
(
    link_name            IN VARCHAR2,
    endpoint             IN OUT NOCOPY VARCHAR2,
    share_type           IN OUT NOCOPY VARCHAR2,
    share_name           IN OUT NOCOPY VARCHAR2,
    token_endpoint       IN OUT NOCOPY VARCHAR2,
    metadata             IN OUT NOCOPY BLOB,
    link_owner           IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
link_name Nombre de un enlace de recurso compartido (creado anteriormente por CREATE_SHARE_LINK).
endpoint OUT: el punto final, si lo hay, asociado al enlace de recurso compartido.
share_type OUT: tipo de enlace de recurso compartido (por ejemplo, DELTA).
share_name OUT: nombre del recurso compartido enlazado.
token_endpoint Este parámetro ya no se utiliza.
metadata OUT: metadatos opcionales asociados con el enlace de recurso compartido.
link_owner Propietario del enlace de recurso compartido. El valor por defecto es el esquema actual.

GET_SHARE_PROVIDER_CREDENTIAL Procedimiento

Obtenga el nombre de credencial que utilizará el usuario actual cuando intente acceder al proveedor de recursos compartidos delta proporcionado.

Sintaxis

PROCEDURE GET_SHARE_PROVIDER_CREDENTIAL
(
    provider_name        IN VARCHAR2,
    share_credential     IN OUT NOCOPY VARCHAR2,
    get_token_credential IN OUT NOCOPY VARCHAR2,
    owner                IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
provider_name El nombre del proveedor de recursos compartidos.
share_credential OUT: nombre de la credencial asociada al profesional asistencial. El nombre de credencial se devuelve sin comillas dobles, ya que aparecería en la columna CREDENTIAL_NAME de la vista USER_CREDENTIALS. Consulte ALL_CREDENTIALS View.
get_token_credential Este parámetro no se utiliza.
owner El propietario es el nombre del esquema en el que se registró el proveedor de recursos compartidos, no el propietario de la credencial. El valor por defecto es el esquema actual.

GET_SHARE_PROVIDER_INFO Procedimiento

Obtenga las cadenas de punto final y el tipo de recurso compartido junto con los metadatos JSON adicionales para un proveedor de recursos compartidos. Para los proveedores de recursos compartidos ORACLE, el ID de proveedor de Oracle se devuelve en el argumento de punto final.

Sintaxis

PROCEDURE GET_SHARE_PROVIDER_INFO
(
    provider_name        IN VARCHAR2,
    endpoint             IN OUT NOCOPY VARCHAR2,
    share_type           IN OUT NOCOPY VARCHAR2,
    token_endpoint       IN OUT NOCOPY VARCHAR2,
    metadata             IN OUT NOCOPY BLOB,
    owner                IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
provider_name El nombre del proveedor de recursos compartidos.
endpoint Punto final delta.
share_type El tipo de recurso compartido: DELTA o ORACLE.
token_endpoint Este parámetro no se utiliza.
metadata Metadatos opcionales que se asociaron al proveedor de recursos compartidos.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.

Función GET_SHARING_ID

Devuelve un identificador que se puede utilizar como sharing_id en el procedimiento CREATE_SHARE_RECIPIENT. Esta función se puede utilizar para compartir datos entre dos usuarios, el "proveedor" y el "destinatario", en diferentes bases de datos.

Consulte Procedimiento CREATE_SHARE_RECIPIENT para obtener más información.

Sintaxis

FUNCTION GET_SHARING_ID
(
    sharing_id_type      IN VARCHAR2 := SHARING_ID_TYPE_DATABASE
)
  RETURN VARCHAR2;

Parámetros

Parámetro Descripción
sharing_id_type Tipo de ID de uso compartido.

Uso

El flujo es el siguiente:

  1. El destinatario llama a DBMS_SHARE.GET_SHARING_ID para obtener un identificador único.

  2. El destinatario envía este identificador (por ejemplo, por correo electrónico) al profesional asistencial.

  3. El proveedor llama a DBMS_SHARE.CREATE_SHARE_RECIPIENT y transfiere el identificador como sharing_id.

  4. El proveedor llama a DBMS_SHARE.GRANT_TO_RECIPIENT para proporcionar al destinatario acceso a los datos compartidos.

El parámetro sharing_id_type se utiliza para especificar qué usuarios de la base de datos pueden acceder al recurso compartido después de la secuencia anterior.

  • DATABASE El recurso compartido será visible para cualquier usuario administrador de la base de datos donde se llamó a GET_SHARING_ID.

  • COMPARTIMENTO El recurso compartido será visible para cualquier usuario administrador en cualquier base de datos del mismo compartimento en el que se haya llamado a GET_SHARING_ID.

  • El recurso compartido será visible para cualquier usuario administrador de cualquier base de datos del mismo arrendamiento al que se haya llamado a GET_SHARING_ID.

  • REGIÓN El recurso compartido será visible para cualquier usuario administrador en cualquier base de datos de la misma región donde se llamó a GET_SHARING_ID.

OPEN_SHARE_LINK_CURSOR Procedimiento

Abra un cursor que devuelva datos de una tabla compartida.

Sintaxis

PROCEDURE OPEN_SHARE_LINK_CURSOR
(
    share_link_name      IN VARCHAR2,
    share_schema_name    IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    table_cursor         IN OUT NOCOPY SYS_REFCURSOR,
    share_link_owner     IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
share_link_name Nombre del enlace de recurso compartido.
share_schema_name Nombre del esquema compartido.
share_table_name El nombre de la tabla compartida.
table_cursor El cursor.
share_link_owner El propietario del enlace. El valor por defecto es el esquema actual.

REFRESH_BEARER_TOKEN_CREDENTIAL Procedimiento

Actualice una o más credenciales creadas por CREATE_BEARER_TOKEN_CREDENTIAL o CREATE_CREDENTIALS llamando a los puntos finales de token registrados y recuperando nuevos tokens de portador. Tenga en cuenta que un trabajo del programador, ADP$BEARER_REFRESH_JOB, llama automáticamente a este procedimiento y se ejecuta cada 50 minutos.

Consulte Procedimiento CREATE_BEARER_TOKEN_CREDENTIAL o Procedimiento y función CREATE_CREDENTIALS para obtener más información.

Sintaxis

PROCEDURE REFRESH_BEARER_TOKEN_CREDENTIAL
(
    credential_name           IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
credential_name Nombre de la credencial que se debe refrescar.

RENAME_CLOUD_STORAGE_LINK Procedimiento

Cambie el nombre de un enlace de almacenamiento en la nube registrado.

Sintaxis

PROCEDURE RENAME_CLOUD_STORAGE_LINK
(
    old_name             IN VARCHAR2,
    new_name             IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
old_name Nombre actual del enlace de almacenamiento en la nube.
new_name El nuevo nombre del enlace de almacenamiento en la nube.
owner Propietario del enlace de almacenamiento en la nube. El valor por defecto es el esquema actual.
auto_commit Si es TRUE, los cambios se confirman automáticamente. El valor por defecto es TRUE.

RENAME_SHARE_PROVIDER Procedimiento

Cambiar el nombre de un proveedor de recursos compartidos registrado.

Sintaxis

PROCEDURE RENAME_SHARE_PROVIDER
(
  old_name             IN VARCHAR2,
  new_name             IN VARCHAR2,
  owner                IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
old_name Nombre actual del proveedor de recursos compartidos.
new_name El nuevo nombre del proveedor de recursos compartidos.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.

REMOVE_SHARE_SCHEMA Procedimiento

Elimine un esquema y todo su contenido de un recurso compartido.

Sintaxis

PROCEDURE REMOVE_SHARE_SCHEMA
(
    share_name           IN VARCHAR2,
    schema_name          IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE
);

Parámetros

Parámetro Descripción
share_name Nombre del recurso compartido.
schema_name Nombre del esquema que se va a eliminar.
share_owner El propietario de la acción.
auto_commit Si es TRUE, los cambios se confirman automáticamente. El valor por defecto es FALSO.

SET_SHARE_LINK_METADATA Procedimiento

Defina los metadatos JSON adicionales para el enlace de recurso compartido.

Sintaxis

PROCEDURE SET_SHARE_LINK_METADATA
(
    link_name            IN VARCHAR2,
    metadata             IN SYS.JSON_OBJECT_T,
    replace_existing     IN BOOLEAN := FALSE,
    link_owner           IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
link_name Nombre del enlace de recurso compartido.
metadata Los nuevos metadatos.
replace_existing Si es TRUE, todos los metadatos existentes se sustituyen por la nueva versión. Si es FALSE, el nuevo valor se fusiona con los metadatos existentes.
link_owner Propietario del enlace de recurso compartido. El valor por defecto es el esquema actual.

SET_SHARE_PROVIDER_CREDENTIAL Procedimiento

Defina el nombre de credencial que utilizará el usuario actual cuando intente acceder al proveedor de recursos compartidos proporcionado.

Sintaxis

PROCEDURE SET_SHARE_PROVIDER_CREDENTIAL
(
    provider_name        IN VARCHAR2,
    share_credential     IN VARCHAR2,
    get_token_credential IN VARCHAR2 := NULL,
    owner                IN VARCHAR2 := NULL,
    check_if_exists      IN BOOLEAN := TRUE
);

Parámetros

Parámetro Descripción
provider_name El nombre del proveedor de recursos compartidos.
share_credential Credencial de token de portador.
get_token_credential Este argumento se ignora.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.
check_if_exists Si es TRUE (valor por defecto), valide que la credencial existe.

SET_SHARE_PROVIDER_METADATA Procedimiento

Defina metadatos JSON adicionales para el proveedor de recursos compartidos.

Sintaxis

PROCEDURE SET_SHARE_PROVIDER_METADATA
(
    provider_name        IN VARCHAR2,
    metadata             IN SYS.JSON_OBJECT_T,
    replace_existing     IN BOOLEAN := FALSE,
    owner                IN VARCHAR2 := NULL
);

Parámetros

Parámetro Descripción
provider_name El nombre del proveedor de recursos compartidos.
metadata Los nuevos metadatos.
replace_existing Si es TRUE, todos los metadatos existentes se sustituyen por la nueva versión. Si es FALSE, el nuevo valor se fusiona con los metadatos existentes.
owner Propietario del proveedor de recursos compartidos. El valor por defecto es el esquema actual.

UPDATE_BEARER_TOKEN_CREDENTIAL Procedimiento

Modificar un atributo de una credencial creada por CREATE_CREDENTIALS o CREATE_BEARER_TOKEN_CREDENTIAL.

Consulte Procedimiento CREATE_BEARER_TOKEN_CREDENTIAL o Procedimiento y función CREATE_CREDENTIALS para obtener más información.

Sintaxis

PROCEDURE UPDATE_BEARER_TOKEN_CREDENTIAL
(
     credential_name           IN VARCHAR2,
     attribute                 IN VARCHAR2,
     new_value                 IN VARCHAR2
);

Parámetros

Parámetro Descripción
credential_name Nombre de la credencial que se debe actualizar.
attribute Atributo que se va a actualizar. Una de las opciones: 'BEARER_TOKEN', 'CLIENT_ID', 'CLIENT_SECRET', 'TOKEN_REFRESH_RATE'. No se puede cambiar el punto final del token.
new_value Nuevo valor.

Ejemplo: actualización del CLIENT_ID de una credencial

SQL> BEGIN
  2    dbms_share.create_bearer_token_credential(
  3      credential_name=>'MY_RENEWABLE_CREDENTIAL',
  4      token_endpoint=>'https://myserver/ords/share_provider/oauth/token',
  5      client_id=>'VXGQ_44s6qJ-K4WHUNM2yQ..',
  6      client_secret=>'y9ddppgwEmZl7adDHFQndw..');
  7  END;
  8  /
PL/SQL procedure successfully completed.
SQL> select credential_name, username from user_credentials where credential_name LIKE 'MY_RENEWABLE_CREDENTIAL%';
CREDENTIAL_NAME
------------------------------------------
USERNAME
-------------------------------------
MY_RENEWABLE_CREDENTIAL
BEARER_TOKEN
MY_RENEWABLE_CREDENTIAL$TOKEN_REFRESH_CRED
ABCDEF