Riepilogo sottoprogrammi consumatore quota

Nella tabella seguente sono elencate le procedure e le funzioni del pacchetto DBMS_SHARE utilizzate per utilizzare le condivisioni.

Sottoprogrammi descrizione;
ASSERT_SHARING_ID Procedura Eseguire i controlli di convalida di base per un ID condivisione e restituirne uno in forma canonica.
CREATE_CREDENTIALS Procedura e funzione Creare una credenziale contenente il token del servizio di trasporto da un profilo delta.
CREATE_OR_REPLACE_SHARE_LINK Procedura Sottoscrizione alla condivisione da parte di un provider di azioni registrato.
CREATE_OR_REPLACE_ORACLE_SHARE_PROVIDER Procedura Eseguire la sottoscrizione a un provider di condivisione Oracle con un nome locale.
CREATE_ORACLE_SHARE_PROVIDER Procedura Eseguire la sottoscrizione a un provider di condivisione Oracle con un nome locale.
CREATE_SHARE_LINK Procedura Sottoscrizione alla condivisione da parte di un provider di azioni registrato.
CREATE_SHARE_LINK_VIEW Procedura Consente di creare o sostituire una vista denominata che consente l'accesso a una tabella condivisa remota.
CREATE_SHARE_PROVIDER Procedura Eseguire la sottoscrizione a un provider di condivisione delta.
Funzione DISCOVER_AVAILABLE_SHARES Restituisce un valore SHARE_AVAILABLE_SHARES_ROW per ogni tabella disponibile dai provider di condivisione sottoscritti.
Funzione DISCOVER_AVAILABLE_TABLES Restituisce un valore SHARE_AVAILABLE_TABLES_ROW per ogni tabella disponibile dai provider di condivisione sottoscritti o da un endpoint delta esplicito.
DROP_SHARE_LINK Procedura Eliminare un collegamento di condivisione creato dalla procedura CREATE_SHARE_LINK.
DROP_SHARE_PROVIDER Procedura Eliminare una sottoscrizione a un provider di condivisione.
ENABLE_DELTA_ENDPOINT Procedura Creare le ACL necessarie che consentono all'utente specificato di connettersi a un endpoint delta.
FLUSH_SHARE_LINK_CACHE Procedura Svuota la cache delle condivisioni per un determinato collegamento di condivisione.
FLUSH_SHARE_PROVIDER_CACHE Procedura Svuota la cache delle condivisioni per un determinato provider di condivisioni.
GENERATE_SHARE_LINK_SELECT Procedura e funzione Generare un'istruzione SELECT che restituisce i dati da una tabella condivisa.
Funzione GET_ORACLE_SHARE_LINK_INFO Recupera il nome e lo spazio di nomi del collegamento cloud per una condivisione Oracle-Oracle.
GET_SHARE_LINK_INFO Procedura Recupera gli endpoint, il tipo di condivisione e il nome condivisione insieme a eventuali metadati JSON aggiuntivi per un collegamento di condivisione.
GET_SHARE_PROVIDER_CREDENTIAL Procedura Recupera il nome della credenziale che l'utente corrente deve utilizzare quando tenta di accedere al provider di condivisione delta specificato.
GET_SHARE_PROVIDER_INFO Procedura Recupera la stringa o le stringhe endpoint e il tipo di condivisione insieme a eventuali metadati JSON aggiuntivi per un provider di condivisione.
Funzione GET_SHARING_ID Restituisce un identificativo che può essere utilizzato come sharing_id nella procedura CREATE_SHARE_RECIPIENT.
OPEN_SHARE_LINK_CURSOR Procedura Aprire un cursore che restituisce i dati da una tabella condivisa.
REFRESH_BEARER_TOKEN_CREDENTIAL Procedura Aggiornare una o più credenziali create da CREATE_BEARER_TOKEN_CREDENTIAL o CREATE_CREDENTIALS.
RENAME_CLOUD_STORAGE_LINK Procedura Rinominare un collegamento memoria cloud registrato.
RENAME_SHARE_LINK Procedura Rinominare un collegamento di condivisione registrato.
RENAME_SHARE_PROVIDER Procedura Rinominare un provider condivisione registrato.
REMOVE_SHARE_SCHEMA Procedura Rimuovere uno schema e tutto il relativo contenuto da una condivisione.
SET_SHARE_LINK_METADATA Procedura Impostare i metadati JSON aggiuntivi per il collegamento di condivisione.
SET_SHARE_PROVIDER_CREDENTIAL Procedura Impostare il nome della credenziale per accedere al provider di condivisione specificato.
SET_SHARE_PROVIDER_METADATA Procedura Impostare metadati JSON aggiuntivi per il provider di condivisione.
UPDATE_BEARER_TOKEN_CREDENTIAL Procedura Modificare un attributo di una credenziale creata da CREATE_CREDENTIALS o CREATE_BEARER_TOKEN_CREDENTIAL.

ASSERT_SHARING_ID Procedura

Eseguire i controlli di convalida di base per un ID condivisione e restituirne uno in forma canonica. Viene generata un'eccezione se l'ID è ovviamente non valido.

Sintassi

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

Parametri

Parametro descrizione;
sharing_id ID da controllare.
out_sharing_id_type Il tipo dell'ID, se valido. ad esempio, TENANCY o DATABASE.

CREATE_CREDENTIALS Procedura e funzione

Creare una credenziale contenente il token bearer da un profilo di condivisione delta. Il tipo standard, versione 1, specifica un endpoint e un singolo token al portatore a lungo termine.

Sintassi

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

Di seguito è riportata la versione funzionale del file create_credentials che restituisce il nome delle nuove credenziali in formato JSON.

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

Parametri

Parametro descrizione;
credential_base_name Nome base delle credenziali da creare.
delta_profile Profilo di condivisione delta, in formato JSON, ottenuto dal provider di condivisione.
{
  "shareCredentialsVersion": 1,
  "endpoint": "https://<endpoint>",
  "bearerToken": "<token>",
  "expirationTime": "...",
}
Se si desidera, è possibile anche includere una proprietà tokenEndpoint insieme a clientID e clientSecret.
{
  "shareCredentialsVersion": 1,
  "endpoint": "https://<endpoint>",
  "bearerToken": "<token>",
  "expirationTime": "...",
  "tokenEndpoint": "https://<token endpoint>",
  "clientID": "<client id>",
  "clientSecret": "<client secret>"
}

Per ulteriori informazioni, vedere Formato file di profilo e Token del portatore.

out_credential_name Il nome della credenziale token bearer appena creata.

CREATE_OR_REPLACE_SHARE_LINK Procedura

Sottoscrizione alla condivisione da parte di un provider di azioni registrato.

Sintassi

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

Parametri

CREATE_OR_REPLACE_ORACLE_SHARE_PROVIDER Procedura

Eseguire la sottoscrizione a un provider di condivisione Oracle con un nome locale.

Verrà quindi visualizzata in ALL_SHARE_PROVIDERS Visualizza con RECIPIENT_TYPE = 'ORACLE'.

Nota

Utilizzare la procedura SET_STORAGE_CREDENTIAL per aggiungere una credenziale al collegamento di memorizzazione. Vedere SET_STORAGE_CREDENTIAL Procedura.

Sintassi

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

Parametri

CREATE_ORACLE_SHARE_PROVIDER Procedura

Eseguire la sottoscrizione a un provider di condivisione Oracle con un nome locale.

Verrà quindi visualizzata in ALL_SHARE_PROVIDERS Visualizza con RECIPIENT_TYPE = 'ORACLE'.

Sintassi

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

Parametri

Parametro descrizione;
oracle_provider_id ID provider ottenuto dalla vista ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS.

Vedere ALL_AVAILABLE_ORACLE_SHARE_PROVIDERS Vista.

provider_name Un nome locale per il provider
owner Il proprietario del nuovo provider di condivisione. Lasciare NULL per l'utente corrente.
metadata Metadati JSON facoltativi da associare al provider.
auto_commit Se impostato su TRUE, le modifiche verranno automaticamente sottoposte a commit dopo la creazione del collegamento. Il valore predefinito è TRUE.

CREATE_SHARE_LINK Procedura

Sottoscrizione alla condivisione da parte di un provider di azioni registrato. I nomi di condivisione disponibili possono essere trovati chiamando DISCOVER_AVAILABLE_SHARES.

Sintassi

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

Parametri

CREATE_SHARE_LINK_VIEW Procedura

Consente di creare o sostituire una vista denominata che consente l'accesso a una tabella condivisa remota.

Sintassi

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

Parametri

CREATE_SHARE_PROVIDER Procedura

Eseguire la sottoscrizione a un provider di condivisione delta.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Il nome locale di questo provider di condivisione.
endpoint Endpoint delta, dal profilo di condivisione delta.
token_endpoint Questo parametro viene ignorato.
share_type Tipo di fornitore di azioni. Lasciare questo come DELTA.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.
metadata Metadati JSON facoltativi da associare al provider di condivisione.
auto_commit Se TRUE (impostazione predefinita), questa chiamata di procedura esegue il commit delle modifiche non visibili esternamente fino all'esecuzione del commit. Se FALSE, l'utente deve eseguire COMMIT dopo aver eseguito questa chiamata per rendere visibile la modifica.

Funzione DISCOVER_AVAILABLE_SHARES

Restituisce un valore SHARE_AVAILABLE_SHARES_ROW per ogni tabella disponibile dai provider di condivisione sottoscritti.

Sintassi

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

Parametri

Parametro descrizione;
share_provider Nome del provider di condivisione.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.

Esempio: ricerca di un elenco di condivisioni disponibili da un determinato provider

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

Funzione DISCOVER_AVAILABLE_TABLES

Restituisce un valore SHARE_AVAILABLE_TABLES_ROW per ogni tabella disponibile dai provider di condivisione sottoscritti.

Sintassi

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;

Parametri

Parametro descrizione;
share_provider Nome provider di condivisione facoltativo. Se NULL, cercare tutti i provider di condivisione sottoscritti.
share_name Nome condivisione facoltativo. Se NULL, cercare tutte le condivisioni trovate.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.
endpoint Endpoint delta facoltativo.
credential_name Credenziale token bearer facoltativa per accedere all'endpoint.

Esempio: elenca le condivisioni disponibili da tutti i provider di condivisione sottoscritti

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

Esempio: elenca le tabelle disponibili da un endpoint di cui è stata annullata la sottoscrizione

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 Procedura

Eliminare un collegamento di condivisione creato dalla procedura CREATE_SHARE_LINK.

Per ulteriori informazioni, vedere CREATE_SHARE_LINK Procedura.

Sintassi

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

Parametri

DROP_SHARE_PROVIDER Procedura

Eliminare una sottoscrizione a un provider di condivisione.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Il nome del provider di condivisione da eliminare.
owner Il proprietario del provider di azioni da eliminare. Il valore predefinito è lo schema corrente.
drop_credentials Se TRUE, le credenziali associate al provider vengono eliminate. Se FALSE, le credenziali non vengono eliminate.

ENABLE_DELTA_ENDPOINT Procedura

Creare le ACL necessarie che consentono all'utente specificato di connettersi a un endpoint delta. Per questa procedura sono richiesti i privilegi di amministratore.

Sintassi

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

Parametri

Parametro descrizione;
schema_name Schema da abilitare o disabilitare.
delta_profile Il profilo delta. Sono necessari solo l'endpoint e tokenEndpoint.
enabled TRUE per abilitare e FALSE per disabilitare.

FLUSH_SHARE_LINK_CACHE Procedura

Svuota la cache delle condivisioni per un determinato collegamento di condivisione. La lista di condivisioni per gli endpoint remoti viene recuperata invece di fare affidamento sui valori inseriti nella cache.

Sintassi

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

Parametri

FLUSH_SHARE_PROVIDER_CACHE Procedura

Svuota la cache delle condivisioni per un determinato provider di condivisioni. La lista di condivisioni per gli endpoint remoti viene recuperata invece di fare affidamento sui valori inseriti nella cache.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Nome del provider di condivisione.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.
auto_commit Se impostato su TRUE, viene eseguito automaticamente il commit delle modifiche. Il valore predefinito è TRUE.

GENERATE_SHARE_LINK_SELECT Procedura e funzione

Generare un'istruzione SELECT che restituisce i dati da una tabella condivisa.

Sintassi

Versione della procedura di 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  
);
Versione della funzione di 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;

Parametri

Funzione GET_ORACLE_SHARE_LINK_INFO

Recupera il nome e lo spazio di nomi del collegamento cloud per una condivisione Oracle-Oracle.

Sintassi

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;

Parametri

Restituito

Il valore restituito è un oggetto JSON contenente tre proprietà: schema, tabella e dblink. Il chiamante può utilizzare queste tre proprietà per recuperare i dati utilizzando una query del seguente modulo:

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

GET_SHARE_LINK_INFO Procedura

Recupera gli endpoint, il tipo di condivisione e il nome condivisione insieme a eventuali metadati JSON aggiuntivi per un collegamento di condivisione.

Sintassi

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

Parametri

GET_SHARE_PROVIDER_CREDENTIAL Procedura

Recupera il nome della credenziale che l'utente corrente deve utilizzare quando tenta di accedere al provider di condivisione delta specificato.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Nome del provider di condivisione.
share_credential OUT: il nome della credenziale associata al provider. Il nome della credenziale viene restituito senza virgolette, come viene visualizzato nella colonna CREDENTIAL_NAME della vista USER_CREDENTIALS.

Vedere ALL_CREDENTIALS Vista.

get_token_credential Questo parametro non viene utilizzato.
owner Il proprietario è il nome dello schema in cui è stato registrato il provider di condivisione e non il proprietario della credenziale. Il valore predefinito è lo schema corrente.

GET_SHARE_PROVIDER_INFO Procedura

Recupera la stringa o le stringhe endpoint e il tipo di condivisione insieme a eventuali metadati JSON aggiuntivi per un provider di condivisione. Per i provider di condivisione ORACLE, l'ID provider Oracle viene restituito nell'argomento endpoint.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Nome del provider di condivisione.
endpoint Endpoint delta.
share_type Il tipo di condivisione: DELTA o ORACLE.
token_endpoint Questo parametro non viene utilizzato.
metadata I metadati facoltativi associati al provider di condivisione.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.

Funzione GET_SHARING_ID

Restituisce un identificativo che può essere utilizzato come sharing_id nella procedura CREATE_SHARE_RECIPIENT. Questa funzione può essere utilizzata per condividere i dati tra due utenti, il "fornitore" e il "destinatario", in diversi database.

Per ulteriori informazioni, vedere CREATE_SHARE_RECIPIENT Procedura.

Sintassi

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

Parametri

Parametro descrizione;
sharing_id_type Tipo di ID condivisione.

Uso

Di seguito viene fornita la descrizione del flusso.

  1. Il destinatario chiama DBMS_SHARE.GET_SHARING_ID per ottenere un identificativo univoco.
  2. Il destinatario invia questo identificativo (ad esempio via e-mail) al provider.
  3. Il provider chiama DBMS_SHARE.CREATE_SHARE_RECIPIENT, passando l'identificativo come sharing_id.
  4. Il provider chiama DBMS_SHARE.GRANT_TO_RECIPIENT per concedere al destinatario l'accesso ai dati condivisi.

Il parametro sharing_id_type viene utilizzato per specificare gli utenti del database che possono accedere alla condivisione in base alla sequenza precedente.

  • DATABASE La condivisione sarà visibile a qualsiasi utente amministratore nel DATABASE in cui è stato chiamato GET_SHARING_ID.
  • La condivisione sarà visibile a qualsiasi utente amministratore in qualsiasi database nello stesso compartimento in cui è stato chiamato GET_SHARING_ID.
  • TENANCY La condivisione sarà visibile a qualsiasi utente amministratore in qualsiasi database della stessa TENANCY in cui è stato chiamato GET_SHARING_ID.
  • REGIONE La condivisione sarà visibile a qualsiasi utente amministratore in qualsiasi database nella stessa area in cui è stato chiamato GET_SHARING_ID.

OPEN_SHARE_LINK_CURSOR Procedura

Aprire un cursore che restituisce i dati da una tabella condivisa.

Sintassi

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

Parametri

Parametro descrizione;
share_link_name Il nome del collegamento di condivisione.
share_schema_name Il nome dello schema condiviso.
share_table_name Il nome della tabella condivisa.
table_cursor Il cursore.
share_link_owner Il proprietario del collegamento. Il valore predefinito è lo schema corrente.

REFRESH_BEARER_TOKEN_CREDENTIAL Procedura

Aggiornare una o più credenziali create da CREATE_BEARER_TOKEN_CREDENTIAL o CREATE_CREDENTIALS richiamando gli endpoint di token registrati e recuperando i nuovi token al portatore. Si noti che questa procedura viene richiamata automaticamente da un job dello scheduler, ADP$BEARER_REFRESH_JOB, che viene eseguito ogni 50 minuti.

Sintassi

PROCEDURE REFRESH_BEARER_TOKEN_CREDENTIAL  
(
    credential_name           IN VARCHAR2 := NULL  
);

Parametri

Parametro descrizione;
credential_name Il nome della credenziale da aggiornare.

RENAME_CLOUD_STORAGE_LINK Procedura

Rinominare un collegamento memoria cloud registrato.

Sintassi

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

Parametri

RENAME_SHARE_PROVIDER Procedura

Rinominare un provider condivisione registrato.

Sintassi

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

Parametri

Parametro descrizione;
old_name Il nome corrente del provider di condivisione.
new_name Il nuovo nome del provider di condivisione.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.

REMOVE_SHARE_SCHEMA Procedura

Rimuovere uno schema e tutto il relativo contenuto da una condivisione.

Sintassi

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

Parametri

Parametro descrizione;
share_name Il nome della condivisione.
schema_name Il nome dello schema da rimuovere.
share_owner Il proprietario della condivisione.
auto_commit Se impostato su TRUE, viene eseguito automaticamente il commit delle modifiche. L'impostazione predefinita è FALSE.

SET_SHARE_LINK_METADATA Procedura

Impostare i metadati JSON aggiuntivi per il collegamento di condivisione.

Sintassi

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

Parametri

SET_SHARE_PROVIDER_CREDENTIAL Procedura

Impostare il nome della credenziale che l'utente corrente deve utilizzare quando tenta di accedere al provider di condivisione specificato.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Nome del provider di condivisione.
share_credential Credenziale del token bearer.
get_token_credential Questo argomento viene ignorato.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.
check_if_exists Se TRUE (impostazione predefinita), verificare che la credenziale esista.

SET_SHARE_PROVIDER_METADATA Procedura

Impostare metadati JSON aggiuntivi per il provider di condivisione.

Sintassi

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

Parametri

Parametro descrizione;
provider_name Nome del provider di condivisione.
metadata I nuovi metadati.
replace_existing Se TRUE, tutti i metadati esistenti vengono sostituiti dalla nuova versione. Se FALSE, il nuovo valore viene unito a tutti i metadati esistenti.
owner Il proprietario del fornitore di azioni. Il valore predefinito è lo schema corrente.

UPDATE_BEARER_TOKEN_CREDENTIAL Procedura

Modificare un attributo di una credenziale creata da CREATE_CREDENTIALS o CREATE_BEARER_TOKEN_CREDENTIAL.

Sintassi

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

Parametri

Parametro descrizione;
credential_name Il nome della credenziale da aggiornare.
attribute Attributo da aggiornare. Una delle opzioni 'BEARER_TOKEN', 'CLIENT_ID', 'CLIENT_SECRET', 'TOKEN_REFRESH_RATE'. Impossibile modificare l'endpoint del token.
new_value Nuovo valore.

Esempio: aggiornare il valore CLIENT_ID di una credenziale

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