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
ASSERT_SHARING_ID Procedimiento Ejecute comprobaciones de validación básicas con un ID de uso compartido y devuelva uno en forma canónica.
CREATE_CREDENTIALS Procedimiento y función Cree una credencial que contenga el token de portador a partir de un perfil delta.
CREATE_OR_REPLACE_SHARE_LINK Procedimiento Suscríbase para compartir con un proveedor de recursos compartidos registrado.
CREATE_OR_REPLACE_ORACLE_SHARE_PROVIDER Procedimiento Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.
CREATE_ORACLE_SHARE_PROVIDER Procedimiento Suscribirse a un proveedor de recursos compartidos de Oracle, con un nombre local.
CREATE_SHARE_LINK Procedimiento Suscríbase para compartir con un proveedor de recursos compartidos registrado.
CREATE_SHARE_LINK_VIEW Procedimiento Crear o sustituir una vista con nombre que proporcione acceso a una tabla compartida remota.
CREATE_SHARE_PROVIDER Procedimiento 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.
DROP_SHARE_LINK Procedimiento Borre un enlace de recurso compartido creado por el procedimiento CREATE_SHARE_LINK.
DROP_SHARE_PROVIDER Procedimiento Borrar una suscripción a un proveedor de recursos compartidos.
ENABLE_DELTA_ENDPOINT Procedimiento Cree las ACL necesarias que permitan al usuario especificado conectarse a un punto final delta.
FLUSH_SHARE_LINK_CACHE Procedimiento Vacíe la caché de recursos compartidos para un enlace de recursos compartidos determinado.
FLUSH_SHARE_PROVIDER_CACHE Procedimiento 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.
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.
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.
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.
Función GET_SHARING_ID Devuelve un identificador que se puede utilizar como sharing_id en el procedimiento CREATE_SHARE_RECIPIENT.
OPEN_SHARE_LINK_CURSOR Procedimiento Abra un cursor que devuelva datos de una tabla compartida.
REFRESH_BEARER_TOKEN_CREDENTIAL Procedimiento Actualice una o más credenciales creadas por CREATE_BEARER_TOKEN_CREDENTIAL o CREATE_CREDENTIALS.
RENAME_CLOUD_STORAGE_LINK Procedimiento Cambie el nombre de un enlace de almacenamiento en la nube registrado.
RENAME_SHARE_LINK Procedimiento Cambie el nombre de un enlace compartido registrado.
RENAME_SHARE_PROVIDER Procedimiento Cambiar el nombre de un proveedor de recursos compartidos registrado.
REMOVE_SHARE_SCHEMA Procedimiento Elimine un esquema y todo su contenido de un recurso compartido.
SET_SHARE_LINK_METADATA Procedimiento Defina los metadatos JSON adicionales para el enlace de recurso compartido.
SET_SHARE_PROVIDER_CREDENTIAL Procedimiento Defina el nombre de la credencial para acceder al proveedor de recursos compartidos proporcionado.
SET_SHARE_PROVIDER_METADATA Procedimiento Defina metadatos JSON adicionales para el proveedor de recursos compartidos.
UPDATE_BEARER_TOKEN_CREDENTIAL Procedimiento 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://<endpoint>",
  "bearerToken": "<token>",
  "expirationTime": "...",
}
El perfil también puede incluir, opcionalmente, una propiedad tokenEndpoint junto con clientID y clientSecret.
{
  "shareCredentialsVersion": 1,
  "endpoint": "https://<endpoint>",
  "bearerToken": "<token>",
  "expirationTime": "...",
  "tokenEndpoint": "https://<token endpoint>",
  "clientID": "<client id>",
  "clientSecret": "<client secret>"
}

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

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

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

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

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

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

SQL> 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 CREATE_SHARE_LINK Procedure para obtener más información.

Sintaxis

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

Parámetros

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

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

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

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

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 CREATE_SHARE_RECIPIENT Procedure 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.

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

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

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.

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