Riepilogo dei sottoprogrammi del producer di condivisione

In questa tabella sono elencate le procedure e le funzioni del pacchetto DBMS_SHARE utilizzate per produrre condivisioni per i destinatari.

Sottoprogramma Descrizione
Procedura ADD_TO_SHARE Aggiungere una tabella o una vista a una condivisione.
Procedura ASSERT_SHAREABLE_OBJECT Restituisce senza errori, se l'oggetto esiste e può essere condiviso.
Procedura ASSERT_SHARING_ID Eseguire i controlli di convalida di base per un ID condivisione e restituirne uno in formato canonico.
Funzione CAN_CREATE_SHARE Questa funzione controlla se lo schema corrente può creare destinatari condivisione.
Funzione CAN_CREATE_SHARE_RECIPIENT Questa funzione controlla se lo schema corrente può creare destinatari condivisione.
Procedura CLEAR_RECIPIENT_EVENTS Cancella gli eventi dal log eventi del destinatario della condivisione.
Procedura CLEAR_SHARE_EVENTS Cancella gli eventi dal log eventi di condivisione.
Procedura CREATE_BEARER_TOKEN_CREDENTIAL Creare una credenziale adatta per l'uso con i provider di condivisione delta.
Procedura CREATE_CLOUD_STORAGE_LINK Creare un collegamento URI di storage cloud denominato.
Procedura CREATE_OR_REPLACE_CLOUD_STORAGE_LINK Crea o sostituisce un URI di storage cloud denominato.
Procedura CREATE_OR_REPLACE_SHARE_RECIPIENT Creare o sostituire un destinatario condivisione.
Procedura CREATE_SHARE Creare un oggetto di condivisione denominato.
Procedura CREATE_SHARE_RECIPIENT Crea un nuovo destinatario condivisione.
Procedura DROP_CLOUD_STORAGE_LINK Eliminare un collegamento allo storage cloud.
Procedura DROP_RECIPIENT Eliminare un destinatario.
Procedura DROP_SHARE Rilasciare una quota e tutti i suoi contenuti.
Procedura DROP_SHARE_LINK_VIEW Eliminare una vista creata dalla procedura CREATE_SHARE_LINK_VIEW.
Procedura DROP_SHARE_VERSION Rilasciare una singola versione di condivisione.
Procedura DROP_SHARE_VERSIONS Rilasciare un intervallo di versioni di condivisione.
Procedura DROP_UNUSED_SHARE_VERSIONS Eliminare qualsiasi versione della condivisione attualmente non in uso.
Procedura ENABLE_SCHEMA Abilitare o disabilitare uno schema per la condivisione.
Funzione GET_ACTIVATION_LINK Generare il collegamento che viene inserito nelle e-mail al destinatario autorizzato.
Funzione GET_PUBLISHED_IDENTITY Recupera i dati relativi all'utente corrente impostato da SET_PUBLISHED_IDENTITY.
Funzione GET_RECIPIENT_PROPERTY Restituisce il valore di una proprietà per un destinatario.
Funzione GET_SHARE_PROPERTY Recupera il valore di proprietà di una condivisione esistente.
Funzione GET_SHARE_TABLE_PROPERTY Recupera il valore della proprietà di una tabella condivisione esistente.
Procedura GRANT_TO_RECIPIENT Concedere l'accesso a una condivisione a un destinatario specifico.
Procedura POPULATE_SHARE_PROFILE Generare un profilo delta per un destinatario.
Procedura PUBLISH_SHARE Pubblica una condivisione e torna immediatamente.
Procedura PUBLISH_SHARE_WAIT Pubblicare una condivisione e attendere il completamento del job in background.
Procedura PURGE_DETACHED_FILES Elimina o dimentica i file di parquet che sono stati staccati dalle loro condivisioni.
Procedura REMOVE_FROM_SHARE Rimuovere una tabella o una vista da una condivisione.
Procedura RENAME_RECIPIENT Rinominare un destinatario.
Procedura RENAME_SHARE Rinominare una condivisione.
Procedura RENAME_SHARE_LINK Rinominare un collegamento di condivisione registrato.
Procedura RENAME_SHARE_SCHEMA Rinominare uno schema di condivisione.
Procedura RENAME_SHARE_TABLE Rinominare una tabella di condivisione.
Procedura REVOKE_FROM_RECIPIENT Revocare l'accesso a una condivisione da un destinatario specifico.
Procedura SET_CURRENT_SHARE_VERSION Modificare la versione corrente di una condivisione.
Procedura SET_PUBLISHED_IDENTITY Impostare i dati relativi all'utente corrente che verranno forniti ai destinatari delle condivisioni ORACLE pubblicate.
Procedura SET_RECIPIENT_LOG_LEVEL Modificare il livello di log per un destinatario condivisione esistente.
Procedura SET_SHARE_LOG_LEVEL Modificare il livello di log per una condivisione esistente.
Procedura SET_STORAGE_CREDENTIAL Impostare il nome della credenziale di accesso per lo storage specificato.
Procedura STOP_JOB Arrestare un job di condivisione in esecuzione.
Procedura UNPUBLISH_SHARE Annulla la pubblicazione di una condivisione.
Procedura UPDATE_DEFAULT_RECIPIENT_PROPERTY Aggiornare i valori predefiniti delle proprietà del destinatario.
Procedura UPDATE_DEFAULT_SHARE_PROPERTY Aggiornare i valori predefiniti delle proprietà di condivisione.
Procedura UPDATE_RECIPIENT_PROPERTY Aggiorna una proprietà di un destinatario esistente.
Procedura UPDATE_SHARE_JOB_PROPERTY Modificare le proprietà di un job di condivisione in esecuzione.
Procedura UPDATE_SHARE_PROPERTY Aggiornare una proprietà di una condivisione esistente.
Procedura UPDATE_SHARE_TABLE_PROPERTY Aggiornare il valore della proprietà di una tabella condivisione esistente.
Funzione VALIDATE_CREDENTIAL Convalidare un nome di credenziale, convertendolo in un formato canonico, se necessario.
Procedura VALIDATE_SHARE_STORAGE Verificare se lo storage specificato è adatto per le condivisioni con controllo delle versioni.
Procedura WAIT_FOR_JOB Questa procedura attende il completamento del job di condivisione specificato.

Procedura ADD_TO_SHARE

Aggiungere una tabella o una vista a una condivisione. L'oggetto diventa visibile a qualsiasi utente esterno a cui è stato concesso l'accesso alla condivisione.

Sintassi

PROCEDURE ADD_TO_SHARE  
(
    share_name           IN VARCHAR2,
    table_name           IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    share_table_name     IN VARCHAR2 := NULL,
    share_schema_name    IN VARCHAR2 := NULL,
    object_metadata      IN SYS.JSON_OBJECT_T := NULL,
    replace_existing     IN BOOLEAN := FALSE,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome di una condivisione esistente a cui è concesso l'oggetto.
table_name Il nome dell'entità da condividere, ad esempio un nome di tabella o vista.
owner Il proprietario dell'entità da condividere. L'impostazione predefinita è lo schema corrente.
share_table_name Nome visibile esternamente della tabella. Per impostazione predefinita, questo è il valore maiuscolo table_name.
share_schema_name Schema visibile esternamente in cui verrà posizionata la tabella. Per impostazione predefinita, si tratta del proprietario della tabella in maiuscolo. Lo schema viene creato automaticamente se non esiste già.
object_metadata Metadati facoltativi da associare all'entità condivisa.
replace_existing Se TRUE e questo valore share_table_name esiste già, il valore table_name esistente viene eliminato dalla condivisione e sostituito con questo valore table_name.

Se FALSE e questo share_table_name esiste già, viene generata un'eccezione che indica che la tabella di condivisione è già in uso.

share_owner Il proprietario della quota.
auto_commit Se TRUE, questa chiamata di procedura esegue il commit delle modifiche non visibili esternamente fino a quando non viene eseguito il commit. Il valore predefinito è FALSE, il che significa che l'utente deve eseguire COMMIT dopo l'esecuzione di questa chiamata per rendere visibile la modifica.

Procedura ASSERT_SHAREABLE_OBJECT

Restituisce senza errori, se l'oggetto esiste e può essere condiviso.

Sintassi

PROCEDURE ASSERT_SHAREABLE_OBJECT
(
  object_name          IN VARCHAR2,
  object_owner         IN VARCHAR2 := NULL
);

Parametri

Parametro Descrizione
object_name Il nome dell'oggetto.
object_owner Il proprietario dell'oggetto. Il valore predefinito è lo schema corrente.

Procedura ASSERT_SHARING_ID

Eseguire i controlli di convalida di base per un ID condivisione e restituirne uno in formato canonico. 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.

Funzione CAN_CREATE_SHARE

Questa funzione controlla se lo schema corrente può creare destinatari condivisione. Se è possibile creare condivisioni, viene restituito 1 e 0 altrimenti.

Sintassi

FUNCTION CAN_CREATE_SHARE
RETURN NUMBER;

Esempio: prima e dopo l'abilitazione dello schema di amministrazione

SQL> select dbms_share.can_create_share from dual;
 CAN_CREATE_SHARE
----------------
               0 
SQL> exec dbms_share.enable_schema('admin') 
PL/SQL procedure successfully completed. 
SQL> select dbms_share.can_create_share from dual; 
CAN_CREATE_SHARE
----------------
               1

Funzione CAN_CREATE_SHARE_RECIPIENT

Questa funzione controlla se lo schema corrente può creare destinatari condivisione. Se è possibile creare condivisioni, viene restituito un numero 1 e altre 0.

Sintassi

FUNCTION CAN_CREATE_SHARE_RECIPIENT
RETURN NUMBER;

Procedura CLEAR_RECIPIENT_EVENTS

Cancella gli eventi dal log eventi del destinatario della condivisione.

Sintassi

PROCEDURE CLEAR_RECIPIENT_EVENTS 
(
   recipient_name       IN VARCHAR2,
   from_time            IN TIMESTAMP WITH TIME ZONE := NULL,
   to_time              IN TIMESTAMP WITH TIME ZONE := NULL,
   recipient_owner      IN VARCHAR2 := NULL 
);

Parametri

Parametro Descrizione
recipient_name Nome locale del destinatario della condivisione.
from_time Prima ora per gli eventi che devono essere cancellati o NULL.
to_time Ultima ora per gli eventi che devono essere cancellati o NULL.
recipient_owner Lo schema proprietario del destinatario.

Procedura CLEAR_SHARE_EVENTS

Cancella gli eventi dal log eventi di condivisione.

Sintassi

PROCEDURE CLEAR_SHARE_EVENTS 
(
    share_name           IN VARCHAR2,
    from_time            IN TIMESTAMP WITH TIME ZONE := NULL,
    to_time              IN TIMESTAMP WITH TIME ZONE := NULL,
    share_owner          IN VARCHAR2 := NULL 
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
from_time Prima ora per gli eventi che devono essere cancellati o NULL.
to_time Ultima ora per gli eventi che devono essere cancellati o NULL.
share_owner Lo schema proprietario della condivisione.

Procedura CREATE_BEARER_TOKEN_CREDENTIAL

Creare una credenziale adatta per l'uso con i provider di condivisione delta.

Questa operazione è simile alla chiamata CREATE_CREDENTIALS, ma richiede valori espliciti anziché un profilo di condivisione delta. Per ulteriori informazioni, vedere CREATE_CREDENTIALS Procedura e funzione.

Sintassi

PROCEDURE CREATE_BEARER_TOKEN_CREDENTIAL 
(
   credential_name      IN VARCHAR2,
   bearer_token         IN VARCHAR2 := NULL,
   token_endpoint       IN VARCHAR2 := NULL,
   client_id            IN VARCHAR2 := NULL,
   client_secret        IN VARCHAR2 := NULL,
   token_refresh_rate   IN PLS_INTEGER := 3600 
);

Parametri

Parametro Descrizione
credential_name Nome della nuova credenziale.
bearer_token Il token del portatore, se noto.
token_endpoint Endpoint da chiamare per ottenere un nuovo token.
client_id Il nome utente da inviare a token_endpoint.
client_secret La password da inviare a token_endpoint.
token_refresh_rate Tempo di aggiornamento facoltativo, espresso in secondi.

Esempio: credenziale con un token bearer fisso

Nella sua forma più semplice, questa procedura equivale a chiamare DBMS_CREDENTIAL con un nome utente di 'BEARER_TOKEN' e il token del portatore stesso come password.

SQL> exec dbms_share.create_bearer_token_credential('MY_FIXED_CREDENTIAL', 'FF42322D27D4C2DEE05392644664351E')
PL/SQL procedure successfully completed. 
SQL> select username from user_credentials where credential_name = 'MY_FIXED_CREDENTIAL';
USERNAME
------------------------------------------------------------------------------------------------------------------------
BEARER_TOKEN

Esempio: credenziale con un token bearer rinnovabile

Creare una credenziale contenente un token bearer di breve durata ottenuto da un endpoint token. Il token bearer verrà aggiornato una volta ogni ora utilizzando una seconda credenziale, che viene popolata dall'ID client e dal segreto.

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    VXGQ_44s6qJ-K4WHUNM2yQ..

Procedura CREATE_CLOUD_STORAGE_LINK

Creare un collegamento URI di storage cloud denominato. Un collegamento allo storage cloud è un'associazione denominata tra un URI bucket OCI e un nome credenziale locale.

Nota

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

Sintassi

PROCEDURE CREATE_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

Esempio

In questo esempio viene creato un collegamento allo storage cloud denominato MY_SHARE_STORAGE nell'URL specificato.

SQL> BEGIN
  2    dbms_share.create_cloud_storage_link(
  3      'MY_SHARE_STORAGE',
  4      'https://objectstorage.../n/abcdef/b/my_bucket/o' );
  5  END;
  6  /

PL/SQL procedure successfully completed.

SQL> select storage_link_name from user_lineage_cloud_storage_links;

STORAGE_LINK_NAME
----------------------------------------------------------------------------------------
MY_SHARE_STORAGE

Procedura CREATE_OR_REPLACE_CLOUD_STORAGE_LINK

Crea o sostituisce un URI di storage cloud denominato. Un collegamento allo storage cloud è un'associazione denominata tra un URI bucket OCI e un nome credenziale locale.

Nota

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

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

Procedura CREATE_OR_REPLACE_SHARE_RECIPIENT

Creare o sostituire un destinatario condivisione. È necessario specificare almeno un indirizzo e-mail o un ID condivisione.

Sintassi

PROCEDURE CREATE_OR_REPLACE_SHARE_RECIPIENT  
(
    recipient_name       IN VARCHAR2,
    description          IN VARCHAR2 := NULL,
    recipient_owner      IN VARCHAR2 := NULL,
    email                IN VARCHAR2 := NULL,
    sharing_id           IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
recipient_name Nome locale del destinatario della condivisione. Alcuni nomi non sono consentiti (ad esempio MY_TENANCY).
description Descrizione del destinatario.
recipient_owner Lo schema proprietario del destinatario.
email E-mail che verrà registrata per l'utente OAUTH.
sharing_id L'ID condivisione del destinatario, dalla funzione GET_SHARING_ID.

Procedura CREATE_SHARE

Creare un oggetto di condivisione denominato.

Sintassi

PROCEDURE CREATE_SHARE
(
  share_name           IN VARCHAR2,
  share_type           IN VARCHAR2 := SHARE_TYPE_VERSIONED,
  storage_link_name    IN VARCHAR2 := NULL,
  storage_link_owner   IN VARCHAR2 := NULL,
  description          IN VARCHAR2 := NULL,
  public_description   IN VARCHAR2 := NULL,
  configuration        IN SYS.JSON_OBJECT_T := NULL,
  force_create         IN BOOLEAN  := FALSE,
  share_owner          IN VARCHAR2 := NULL,
  auto_commit          IN BOOLEAN := FALSE,
  log_level            IN PLS_INTEGER := LOG_LEVEL_BASIC,
  run_storage_tests    IN BOOLEAN := TRUE
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione. Questo nome è in maiuscolo poiché le condivisioni delta non fanno distinzione tra maiuscole e minuscole. Poiché il nome segue le convenzioni Oracle standard, deve contenere al massimo 128 caratteri e deve essere racchiuso tra virgolette doppie se non si tratta di un identificativo semplice. L'unica differenza è che sarà maiuscola anche se è quotata due volte.
share_type Il tipo di condivisione. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Tipi di condivisione in DBMS_SHARE Costanti.
storage_link_name Nome del collegamento di storage cloud in cui vengono creati gli oggetti. L'utente deve disporre dell'accesso in lettura/scrittura a questo storage e della possibilità di creare richieste preautenticate nello storage. Il parametro è obbligatorio per le condivisioni con controllo delle versioni e facoltativo per le condivisioni correnti.
storage_link_owner Il proprietario del collegamento di storage cloud in cui vengono creati gli oggetti.
description Una descrizione locale per la condivisione.
public_description Una descrizione pubblica per la condivisione.
configuration Documento di configurazione che definisce la modalità di creazione degli oggetti.
force_create Impostare force_create su TRUE per ridefinire la condivisione se esistente.
share_owner Il proprietario della quota.
auto_commit Se TRUE, questa chiamata di procedura esegue il commit delle modifiche non visibili esternamente fino a quando non viene eseguito il commit. Il valore predefinito è FALSE, il che significa che l'utente deve eseguire COMMIT dopo l'esecuzione di questa chiamata per rendere visibile la modifica.
log_level Livello di log degli eventi. Controlla la quantità di dettagli registrata nella vista ALL_SHARE_EVENTS. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Livello di log in DBMS_SHARE Costanti.
run_storage_tests Se questo parametro è TRUE, DBMS_SHARE esegue dei test per verificare che il collegamento allo storage di condivisione specificato disponga dei privilegi corretti.

Se questo parametro è FALSE, la procedura non esegue alcun controllo al momento della creazione. Ciò può causare errori in seguito, durante la pubblicazione o il consumo della quota.

Oracle consiglia di specificare TRUE per questo parametro.

Procedura CREATE_SHARE_RECIPIENT

Crea un nuovo destinatario condivisione.

Sintassi

PROCEDURE CREATE_SHARE_RECIPIENT  
(
    recipient_name       IN VARCHAR2,
    description          IN VARCHAR2 := NULL,
    recipient_owner      IN VARCHAR2 := NULL,
    email                IN VARCHAR2 := NULL,
    sharing_id           IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
recipient_name Nome locale del destinatario della condivisione. Alcuni nomi non sono consentiti, ad esempio MY_TENANCY.
description Descrizione del destinatario.
recipient_owner Lo schema proprietario del destinatario.
email E-mail che verrà registrata per l'utente OAUTH. È necessario specificare almeno un indirizzo e-mail o un ID condivisione.
sharing_id L'ID condivisione del destinatario dalla funzione GET_SHARING_ID. È necessario specificare almeno un indirizzo e-mail o un ID condivisione.

Procedura DROP_CLOUD_STORAGE_LINK

Eliminare un collegamento allo storage cloud.

Sintassi

PROCEDURE DROP_CLOUD_STORAGE_LINK  
(
    storage_link_name    IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Procedura DROP_RECIPIENT

Eliminare un destinatario. Tutti gli accessi al destinatario saranno revocati.

Sintassi

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

Parametri

Parametro Descrizione
recipient_name Il nome del destinatario della condivisione.
owner Schema che definisce il destinatario.

Procedura DROP_SHARE

Rilasciare una quota e tutti i suoi contenuti. L'accesso futuro alla quota da parte dei consumatori finirà.

Sintassi

PROCEDURE DROP_SHARE
(
  share_name           IN VARCHAR2,
  share_owner          IN VARCHAR2 := NULL,
  destroy_objects      IN BOOLEAN := TRUE
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione da eliminare.
share_owner Il proprietario della quota da eliminare.
destroy_objects Se TRUE, eliminare tutti gli oggetti creati per conto della condivisione. Il valore predefinito è TRUE.

Procedura DROP_SHARE_LINK_VIEW

Eliminare una vista creata dalla procedura CREATE_SHARE_LINK_VIEW.

Per ulteriori informazioni, vedere CREATE_SHARE_LINK_VIEW Procedure.

Sintassi

PROCEDURE DROP_SHARE_LINK_VIEW  
(
    view_name            IN VARCHAR2,
    view_owner           IN VARCHAR2 := NULL  
);

Parametri

Procedura DROP_SHARE_VERSION

Rilasciare una singola versione di condivisione. Si noti che non è possibile eliminare la versione corrente.

Sintassi

PROCEDURE DROP_SHARE_VERSION  
(
    share_name           IN VARCHAR2,
    share_version        IN NUMBER,
    destroy_objects      IN BOOLEAN := TRUE,
    force_drop           IN BOOLEAN := FALSE,
    share_owner          IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_version La versione da eliminare. Impossibile eliminare la versione corrente.
destroy_objects Elimina qualsiasi oggetto associato nello storage cloud, se applicabile.
force_drop Rilasciare la versione di condivisione anche se nella versione è presente un file PAR in sospeso.
share_owner Il proprietario della quota.

Procedura DROP_SHARE_VERSIONS

Rilasciare un intervallo di versioni di condivisione. Si noti che non è possibile eliminare la versione corrente utilizzando questa procedura.

Sintassi

PROCEDURE DROP_SHARE_VERSIONS  
(
    share_name           IN VARCHAR2,
    from_share_version   IN NUMBER,
    to_share_version     IN NUMBER,
    destroy_objects      IN BOOLEAN := TRUE,
    force_drop           IN BOOLEAN := FALSE,
    share_owner          IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
from_share_version La versione più bassa da eliminare.
to_share_version La versione più alta da eliminare.
destroy_objects Elimina qualsiasi oggetto associato nello storage cloud, se applicabile.
force_drop Rilasciare la versione di condivisione anche se nella versione è presente un file PAR in sospeso.
share_owner Il proprietario della quota.

Procedura DROP_UNUSED_SHARE_VERSIONS

Eliminare qualsiasi versione della condivisione attualmente non in uso.

Sintassi

PROCEDURE DROP_UNUSED_SHARE_VERSIONS  
(
    share_name           IN VARCHAR2,
    destroy_objects      IN BOOLEAN := TRUE,
    share_owner          IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
destroy_objects Elimina qualsiasi oggetto associato nello storage cloud, se applicabile.
share_owner Il proprietario della quota.

Procedura ENABLE_SCHEMA

Abilitare o disabilitare uno schema per la condivisione. Questa procedura deve essere eseguita dall'utente ADMIN.

Sintassi

Gli utenti possono utilizzare le condivisioni delta senza essere abilitati con questa procedura, ma non possono creare o pubblicare condivisioni. La condivisione è disabilitata per impostazione predefinita per tutti gli schemi, incluso ADMIN.

PROCEDURE ENABLE_SCHEMA  
(
    schema_name          IN VARCHAR2,
    enabled              IN BOOLEAN := TRUE,
    privileges           IN PLS_INTEGER := NULL
);

Parametri

Parametro Descrizione
schema_name Schema da abilitare o disabilitare.
enable TRUE per abilitare, FALSE per disabilitare.
privileges L'argomento privilegi contiene valori bitmap. Se si lascia l'argomento NULL, l'impostazione predefinita è PRIV_CREATE_SHARE + PRIV_CREATE_RECIPIENT + PRIV_CONSUME_ORACLE_SHARE.

I valori bitmap sono i seguenti:
  • PRIV_CREATE_SHARE
    Consente agli utenti di creare condivisioni di pubblicazione nel proprio schema.
    PRIV_CREATE_SHARE         CONSTANT PLS_INTEGER := 1;
  • PRIV_CREATE_RECIPIENT

    Consente agli utenti di creare destinatari di condivisione nel proprio schema.

    PRIV_CREATE_RECIPIENT     CONSTANT PLS_INTEGER := 2;
  • PRIV_CONSUME_ORACLE_SHARE

    Consente agli utenti di utilizzare le condivisioni live da Oracle a Oracle.

    PRIV_CONSUME_ORACLE_SHARE CONSTANT PLS_INTEGER := 4;
  • PRIV_ORDS_ACL

    Concedere un'ACL all'utente sull'endpoint ORDS locale. Questa operazione è necessaria per consentire all'utente di generare token bearer su condivisioni create localmente.

    PRIV_ORDS_ACL             CONSTANT PLS_INTEGER := 8;

Funzione GET_ACTIVATION_LINK

Generare il collegamento che viene inserito nelle e-mail al destinatario autorizzato. Questo collegamento di attivazione porta alla pagina di download, in cui il destinatario fa clic su un pulsante per ottenere il profilo delta.

Sintassi

FUNCTION GET_ACTIVATION_LINK
(
  recipient_name       IN VARCHAR2,
  recipient_owner      IN VARCHAR2 := NULL,
  expiration           IN PLS_INTEGER := 259200,
  invalidate_previous  IN BOOLEAN := TRUE
)
RETURN VARCHAR2;

Parametri

Esempio: collegamento di attivazione della stampa alla schermata

SQL> exec dbms_share.create_share_recipient('new_recipient', email=>'anyone@example.com')

PL/SQL procedure successfully completed.

SQL> column PROFILE format A200
SQL> variable sprof varchar2(32767)
SQL> declare
  2    profile sys.json_object_t;
  3  begin
  4    dbms_share.populate_share_profile('NEW_RECIPIENT', profile);
  5    :sprof := profile.to_string;
  6  end;
  7  /
PL/SQL procedure successfully completed.

SQL> exec dbms_output.put_line(dbms_share.get_activation_link('NEW_RECIPIENT'))
http://.../ords/_adpshr/delta-sharing/download?key=43BA....YXJlX3Rlc3Q= 

PL/SQL procedure successfully completed.

Funzione GET_PUBLISHED_IDENTITY

Recupera i dati relativi all'utente corrente impostato da SET_PUBLISHED_IDENTITY.

Sintassi

FUNCTION GET_PUBLISHED_IDENTITY
  RETURN CLOB;

Esempio

SQL> declare
  2    id_json json_object_t := json_object_t();
  3  begin
  4    id_json.put('name', 'Demo Publisher');
  5    id_json.put('description', 'Documentation Share Provider');
  6    id_json.put('contact', 'null@example.com');
  7    dbms_share.set_published_identity(id_json);
  8  end;
  9  /

PL/SQL procedure successfully completed.

SQL> select json_query(dbms_share.get_published_identity, '$' pretty) "Published Identity"
  2  from dual;

Published Identity-
-------------------------------------------------------------------------------
{
  "name" : "Demo Publisher",
  "description" : "Documentation Share Provider",
  "contact" : "null@example.com"
}

Funzione GET_RECIPIENT_PROPERTY

Restituisce il valore di una proprietà per un destinatario.

Sintassi

FUNCTION GET_RECIPIENT_PROPERTY
(
  recipient_name       IN VARCHAR2,
  recipient_property   IN VARCHAR2,
  recipient_owner      IN VARCHAR2 := NULL
)RETURN VARCHAR2;

Parametri

Parametro Descrizione
recipient_name Nome del destinatario.
recipient_property La proprietà da ottenere. Di seguito sono riportate alcune delle proprietà disponibili.
  • PROP_SHARE_DESC
  • PROP_SHARE_PUBLIC_DESC
  • PROP_SHARE_VERSION_ACCESS
  • PROP_SHARE_JOB_NAME
  • PROP_SHARE_SPLIT_SIZE
  • PROP_SHARE_LOG_LEVEL
  • PROP_SHARE_JOB_DOP
  • PROP_SHARE_JOB_CLASS
  • PROP_SHARE_JOB_PRIORITY
  • PROP_SHARE_VERSION_ACCESS

Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni per Condividi proprietà in DBMS_SHARE Costanti.

recipient_owner Il proprietario del destinatario. L'impostazione predefinita è l'utente corrente.

Funzione GET_SHARE_PROPERTY

Recupera il valore di proprietà di una condivisione esistente.

Sintassi

FUNCTION GET_SHARE_PROPERTY
(
  share_name       IN VARCHAR2,
  share_property   IN VARCHAR2,
  share_owner      IN VARCHAR2 := NULL
)
RETURN VARCHAR2

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_property Il valore della proprietà da ottenere. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni per Condividi proprietà in DBMS_SHARE Costanti.
share_owner Il proprietario della quota. L'impostazione predefinita è l'utente corrente.

Funzione GET_SHARE_TABLE_PROPERTY

Recupera il valore della proprietà di una tabella condivisione esistente.

Sintassi

FUNCTION GET_SHARE_TABLE_PROPERTY
(
  share_name           IN VARCHAR2,
  share_table_name     IN VARCHAR2,
  share_table_property IN VARCHAR2,
  share_schema_name    IN VARCHAR2 := NULL,
  share_owner          IN VARCHAR2 := NULL
)RETURN VARCHAR2;

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_table_name Il nome della tabella di condivisione.
share_table_property Proprietà della tabella di condivisione da aggiornare. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Condividi proprietà tabella in DBMS_SHARE Costanti.
share_schema_name Il nome dello schema di condivisione. Il valore predefinito è maiuscolo dell'utente corrente.
share_owner Il proprietario della quota.

Procedura GRANT_TO_RECIPIENT

Concedere l'accesso a una condivisione a un destinatario specifico. La condivisione e il destinatario devono appartenere allo stesso schema.

Sintassi

PROCEDURE GRANT_TO_RECIPIENT  
(
    share_name           IN VARCHAR2,
    recipient_name       IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione da concedere.
recipient_name Nome del destinatario.
owner Il proprietario della condivisione e del destinatario.
auto_commit Il parametro auto_commit viene ignorato. Questa procedura si impegnerà sempre.

Procedura POPULATE_SHARE_PROFILE

Generare un profilo delta per un destinatario. Puoi stamparlo sullo schermo o caricarlo da qualche parte. Ad esempio, per un bucket di oggetti che utilizza DBMS_CLOUD.EXPORT_DATA.

Sintassi

PROCEDURE POPULATE_SHARE_PROFILE  
(
    recipient_name       IN VARCHAR2,
    share_profile        IN OUT NOCOPY SYS.JSON_OBJECT_T,
    recipient_owner      IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
recipient_name Nome locale del destinatario.
share_profile Il profilo di condivisione, senza token bearer.
recipient_owner Lo schema proprietario del destinatario.

Esempio: stampare il profilo sullo schermo.

SQL> EXEC DBMS_SHARE.CREATE_SHARE_RECIPIENT('new_recipient', email=>'anyone@example.com')
 
PL/SQL procedure successfully completed. 
SQL> column PROFILE format A200
SQL> variable sprof varchar2(32767)
SQL> declare
  2    profile sys.json_object_t;
  3  begin
  4    dbms_share.populate_share_profile('NEW_RECIPIENT', profile);
  5    :sprof := profile.to_string;
  6  end;
  7  /

PL/SQL procedure successfully completed. 

SQL> select json_query(:sprof, '$' pretty) "PROFILE" from dual;
PROFILE------------------------------------------------------------------------------------------------------------------------
{
  "shareCredentialsVersion" : 1,
  "endpoint" : "https://.../ords/share_test/_delta_sharing/",
  "bearerToken" : "mc7puvhqCpU6xjTOjRdl_w",
  "tokenEndpoint" : "https://.../ords/share_test/oauth/token",
  "clientID" : "VXGQ_44s6qJ-K4WHUNM2yQ..",
  "clientSecret" : "y9ddppgwEmZl7adDHFQndw.."
}

Procedura PUBLISH_SHARE

Pubblica una condivisione e torna immediatamente.

La pubblicazione continuerà in background. È possibile controllare lo stato del job eseguendo una query sulla vista USER_SHARE_JOBS. Per ulteriori informazioni, vedere USER_SHARE_JOBS View.

Sintassi

PROCEDURE PUBLISH_SHARE  
(
    share_name           IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    drop_prior_versions  IN BOOLEAN := FALSE,
    share_job_dop        IN NUMBER := NULL,
    share_job_priority   IN NUMBER := NULL,
    job_class            IN VARCHAR2 := 'DEFAULT_JOB_CLASS',
    force_job_class      IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione da pubblicare.
share_owner Il proprietario della condivisione, che deve essere l'utente corrente o NULL.
drop_prior_versions Impostare su TRUE se si desidera eliminare tutte le versioni precedenti della condivisione. Si noti che le versioni vengono eliminate solo se non sono presenti richieste preautenticate (PAR, Pre-Authenticated Request) in sospeso.
share_job_dop Specificare il numero massimo di job dbms_scheduler che verranno utilizzati per pubblicare la condivisione. Lasciare NULL per utilizzare il numero predefinito di sistema.
share_job_priority Specificare una priorità relativa di questa pubblicazione di condivisione rispetto ad altre. Se due azioni vengono pubblicate contemporaneamente, quella con la priorità più alta viene elaborata per prima anche se è stata avviata in seguito.
job_class La classe di job dello scheduler, da all_scheduler_job_classes, utilizzata per pubblicare la condivisione.
force_job_class Utilizzare l'indirizzojob_class specificato anche se l'amministratore ha definito una classe di job predefinita diversa.

Procedura PUBLISH_SHARE_WAIT

Pubblicare una condivisione e attendere il completamento del job in background. La pubblicazione continua anche se la chiamata viene interrotta.

Sintassi

PROCEDURE PUBLISH_SHARE_WAIT  
(
       share_name           IN VARCHAR2,
       share_owner          IN VARCHAR2 := NULL,
       drop_prior_versions  IN BOOLEAN := FALSE,
       share_job_dop        IN NUMBER := NULL,
       share_job_priority   IN NUMBER := NULL,
       job_class            IN VARCHAR2 := 'DEFAULT_JOB_CLASS',
       force_job_class      IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione da pubblicare.
share_owner Il proprietario della condivisione, che deve essere l'utente corrente o NULL.
drop_prior_versions Impostare su TRUE se si desidera eliminare tutte le versioni precedenti della condivisione. Si noti che le versioni vengono eliminate solo se non sono presenti richieste preautenticate (PAR, Pre-Authenticated Request) in sospeso.
share_job_dop Specificare il numero massimo di job dbms_scheduler che verranno utilizzati per pubblicare la condivisione. Lasciare NULL per utilizzare il numero predefinito di sistema.
share_job_priority Specificare una priorità relativa di questa pubblicazione di condivisione rispetto ad altre. Se due azioni vengono pubblicate contemporaneamente, quella con la priorità più alta viene elaborata per prima anche se è stata avviata in seguito.
job_class La classe di job dello scheduler, da all_scheduler_job_classes, utilizzata per pubblicare la condivisione.
force_job_class Utilizzare l'indirizzojob_class specificato anche se l'amministratore ha definito una classe di job predefinita diversa.

Procedura PURGE_DETACHED_FILES

Elimina o dimentica i file di parquet che sono stati staccati dalle loro condivisioni.

Sintassi

PROCEDURE PURGE_DETACHED_FILES  
(
    file_pattern         IN VARCHAR2 := '%',
    credential_name      IN VARCHAR2 := NULL,
    purge_mode           IN PLS_INTEGER := PURGE_DROP,
    owner_id             IN NUMBER := SYS_CONTEXT('USERENV', 'CURRENT_USERID')  
);

Versione di PURGE_DETACHED_FILES che restituisce l'ID del job di rimozione, se presente.

PROCEDURE PURGE_DETACHED_FILES  
(
    purge_job_id         IN OUT NOCOPY NUMBER,
    file_pattern         IN VARCHAR2 := '%',
    credential_name      IN VARCHAR2 := NULL,
    purge_mode           IN PLS_INTEGER := PURGE_DROP,
    owner_id             IN NUMBER := SYS_CONTEXT('USERENV', 'CURRENT_USERID')  
);

Parametri

Parametro Descrizione
purge_job_id ID job di rimozione.
file_pattern Modello LIKE facoltativo per i file da rimuovere.
credential_name Credenziale facoltativa da utilizzare per eliminare i file.
purge_mode Specifica la modalità di rimozione dei file. I valori della modalità di rimozione includono:
  • PURGE_DROP
    Tentativo di eliminare i file utilizzando la credenziale specificata. Se non è possibile eliminare il file, il file continuerà a essere elencato nelle viste *_SHARE_DETACHED_FILES.
    PURGE_DROP             CONSTANT PLS_INTEGER := 1;
  • PURGE_DROP_FORCE
    Tentativo di eliminare i file utilizzando la credenziale specificata. Il file verrà rimosso dalle viste *_SHARE_DETACHED_FILES anche se il tentativo di eliminazione del file non riesce di nuovo.
    PURGE_DROP_FORCE       CONSTANT PLS_INTEGER := 2;
  • PURGE_FORGET
    Rimuovere le viste *_SHARE_DETACHED_FILES dei file senza tentare di eliminarle.
    PURGE_FORGET           CONSTANT PLS_INTEGER := 3;
owner_id ID proprietario i cui file devono essere rimossi.

Procedura REMOVE_FROM_SHARE

Rimuovere una tabella o una vista da una condivisione.

Sintassi

PROCEDURE REMOVE_FROM_SHARE  
(
    share_name           IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    share_schema_name    IN VARCHAR2 := NULL,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome di una condivisione esistente a cui l'oggetto viene revocato.
share_table_name Il nome della tabella di condivisione da revocare. Deve corrispondere al nome visibile esternamente, quindi l'input verrà maiuscolo.
share_schema_name Il nome dello schema di condivisione. Il valore predefinito è maiuscolo dell'utente corrente.
share_owner Il proprietario della quota.
auto_commit Se TRUE, questa chiamata di procedura esegue il commit delle modifiche non visibili esternamente fino a quando non viene eseguito il commit. Il valore predefinito è FALSE, il che significa che l'utente deve eseguire COMMIT dopo l'esecuzione di questa chiamata per rendere visibile la modifica.

Procedura RENAME_RECIPIENT

Rinominare un destinatario. Questa procedura consente di modificare solo il nome locale del destinatario. La definizione esterna del destinatario, ad esempio il nome dell'utente OAUTH o l'ID condivisione, non viene modificata.

Sintassi

PROCEDURE RENAME_RECIPIENT  
(
    old_recipient_name   IN VARCHAR2,
    new_recipient_name   IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Parametro Descrizione
old_recipient_name Il nome corrente del destinatario della condivisione.
new_recipient_name Il nuovo nome del destinatario della condivisione.
owner Schema che definisce il destinatario.
auto_commit Se TRUE, il commit delle modifiche viene eseguito automaticamente. Le modifiche non sono visibili esternamente fino a quando non viene eseguito il commit. Il valore predefinito è TRUE.

Procedura RENAME_SHARE

Rinominare una condivisione. Si dovrebbe prestare attenzione a questa procedura poiché il cambiamento ha effetti su tutti i consumatori esistenti il cui accesso si basa sul nome precedente. I consumatori non vengono avvisati direttamente o aggiornati.

Sintassi

PROCEDURE RENAME_SHARE  
(
    old_share_name       IN VARCHAR2,
    new_share_name       IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Parametro Descrizione
old_share_name Il nome corrente della condivisione.
new_share_name Il nuovo nome della condivisione.
share_owner Il proprietario della quota.
auto_commit Se TRUE, il commit delle modifiche viene eseguito automaticamente. Le modifiche non sono visibili esternamente fino a quando non viene eseguito il commit. Il valore predefinito è TRUE.

Procedura RENAME_SHARE_LINK

Rinominare un collegamento di condivisione registrato.

Sintassi

PROCEDURE RENAME_SHARE_LINK  
(
    old_name             IN VARCHAR2,
    new_name             IN VARCHAR2,
    link_owner           IN VARCHAR2 := NULL  
);

Parametri

Procedura RENAME_SHARE_SCHEMA

Rinominare uno schema di condivisione.

Sintassi

PROCEDURE RENAME_SHARE_SCHEMA  
(
    share_name           IN VARCHAR2,
    old_schema_name      IN VARCHAR2,
    new_schema_name      IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
old_schema_name Il vecchio nome dello schema.
new_schema_name Il nuovo nome dello schema.
share_owner Il proprietario della quota. Il valore predefinito è lo schema corrente.
auto_commit Se TRUE, il commit delle modifiche viene eseguito automaticamente. Le modifiche non sono visibili esternamente fino a quando non viene eseguito il commit. L'impostazione predefinita è FALSE.

Procedura RENAME_SHARE_TABLE

Rinominare una tabella di condivisione.

Sintassi

PROCEDURE RENAME_SHARE_TABLE  
(
    share_name           IN VARCHAR2,
    share_schema_name    IN VARCHAR2,
    old_share_table_name IN VARCHAR2,
    new_share_table_name IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_schema_name Il nome dello schema di condivisione.
old_share_table_name Il vecchio nome della tabella di condivisione.
new_share_table_name Il nuovo nome della tabella di condivisione.
share_owner Il proprietario della quota.
auto_commit Se TRUE, il commit delle modifiche viene eseguito automaticamente. Le modifiche non sono visibili esternamente fino a quando non viene eseguito il commit. L'impostazione predefinita è FALSE.

Procedura REVOKE_FROM_RECIPIENT

Revocare l'accesso a una condivisione da un destinatario specifico.

Sintassi

PROCEDURE REVOKE_FROM_RECIPIENT  
(
    share_name           IN VARCHAR2,
    recipient_name       IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione da revocare.
recipient_name Nome del destinatario.
owner Il proprietario della condivisione e il destinatario.
auto_commit Se TRUE, il commit delle modifiche viene eseguito automaticamente. Le modifiche non sono visibili esternamente fino a quando non viene eseguito il commit. L'impostazione predefinita è FALSE.

Procedura SET_CURRENT_SHARE_VERSION

Modificare la versione corrente di una condivisione.

Sintassi

PROCEDURE SET_CURRENT_SHARE_VERSION  
(
    share_name         IN VARCHAR2,
    share_version      IN NUMBER,
    share_owner        IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_version La nuova versione o NULL. La versione deve esistere e deve essere valida. Se share_version è NULL, nessuna versione verrà contrassegnata come ATTUALE e la condivisione sarà "non pubblicata".
share_owner Il proprietario della quota. Il valore predefinito è lo schema corrente.

Procedura SET_PUBLISHED_IDENTITY

Impostare i dati relativi all'utente corrente che verranno forniti ai destinatari delle condivisioni ORACLE pubblicate.

Sintassi

PROCEDURE SET_PUBLISHED_IDENTITY  
(
    metadata             IN SYS.JSON_OBJECT_T := NULL  
);

Parametri

Parametro Descrizione
metadata Se l'identità del provider è già stata impostata, solo gli elementi che il chiamante desidera aggiornare devono essere inclusi nella notazione JSON. Se si specifica un valore NULL per un elemento, tale elemento verrà rimosso dall'identità memorizzata. Tuttavia, "nome", "descrizione" e "contatto" non possono essere rimossi in questo modo.

Se l'argomento metadati è NULL, l'identità del provider esistente viene eliminata. Ciò può verificarsi solo se l'utente corrente non dispone di condivisioni pubblicate.

Se l'identità del provider non è stata ancora impostata, il file JSON deve contenere almeno:
  • nome (<=128 byte)
  • descrizione (<=4000 byte)
  • valori contatto (<=4000 byte)

Ulteriori elementi possono essere inclusi a discrezione del chiamante.

Esempio: includere elementi aggiuntivi nei metadati JSON

Oltre al "nome", alla "descrizione" e al "contatto" richiesti, questo esempio include l'elemento aggiuntivo "schedule".
{
  "name" : "A sample share provider",
  "description" : "Test of share provider metadata",
  "contact" : "provider1@example.com".
  "schedule" : "New data provided on alternate rainy Fridays"
}

Esempio: aggiornare "description" e rimuovere "schedule"

Per aggiornare la "descrizione" e rimuovere la "pianificazione", è possibile utilizzare il seguente JSON:
{
  "description" : "The Share Provider You Can Trust!(tm)",
  "schedule" : null
}

Procedura SET_RECIPIENT_LOG_LEVEL

Modificare il livello di log per un destinatario condivisione esistente.

Sintassi

PROCEDURE SET_RECIPIENT_LOG_LEVEL
(
  recipient_name       IN VARCHAR2,
  log_level            IN PLS_INTEGER,
  recipient_owner      IN VARCHAR2 := NULL
);

Parametri

Parametro Descrizione
recipient_name Nome locale del destinatario della condivisione.
log_level Livello di log degli eventi. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Livello di log in DBMS_SHARE Costanti.
recipient_owner Lo schema proprietario del destinatario.

Procedura SET_SHARE_LOG_LEVEL

Modificare il livello di log per una condivisione esistente.

Sintassi

PROCEDURE SET_SHARE_LOG_LEVEL
(
  share_name           IN VARCHAR2,
  log_level            IN PLS_INTEGER,
  share_owner          IN VARCHAR2 := NULL
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
log_level Livello di log degli eventi. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Livello di log in DBMS_SHARE Costanti.
share_owner Il proprietario della quota.

Procedura SET_STORAGE_CREDENTIAL

Impostare il nome della credenziale utilizzato dall'utente corrente quando tenta di accedere allo storage specificato.

Sintassi

PROCEDURE SET_STORAGE_CREDENTIAL  
(
    storage_link_name    IN VARCHAR2,
    credential_name      IN VARCHAR2,
    owner                IN VARCHAR2 := NULL,
    check_if_exists      IN BOOLEAN := TRUE,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Procedura STOP_JOB

Tentativo di arrestare un job di condivisione in esecuzione. La procedura dovrebbe tornare rapidamente, ma l'interruzione del job associato potrebbe richiedere del tempo.

Sintassi

PROCEDURE STOP_JOB
(
  share_job_id         IN NUMBER,
  share_job_owner      IN VARCHAR2 := NULL
);

Parametri

Parametro Descrizione
share_job_id L'ID del job di condivisione.
share_job_owner Il proprietario del lavoro. Il valore predefinito è lo schema corrente.

Procedura UNPUBLISH_SHARE

Annulla la pubblicazione di una condivisione.

Sintassi

PROCEDURE UNPUBLISH_SHARE  
(
    share_name           IN VARCHAR2,
    out_share_job_id     IN OUT NOCOPY NUMBER,
    share_owner          IN VARCHAR2 := NULL,
    drop_all_versions    IN BOOLEAN := FALSE,
    restart_versions     IN BOOLEAN := FALSE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
out_share_job_id L'ID di qualsiasi job di condivisione che deve essere eseguito per elaborare questo comando.
share_owner Il proprietario della quota. Il valore predefinito è lo schema corrente.
drop_all_versions Se impostato su TRUE, tutte le versioni esistenti insieme a tutta la memoria associata vengono eliminate.

Se drop_all_versions è FALSE, tutte le versioni esistenti continuano a esistere, ma la condivisione non è visibile ai destinatari. Una successiva chiamata a PUBLISH_SHARE o SET_CURRENT_SHARE_VERSION li rende nuovamente visibili.

restart_versions Riavviare la numerazione delle versioni. Se FALSE, il successivo numero di versione pubblicato sarà lo stesso che sarebbe stato se nessuna versione fosse stata eliminata.

Se impostato su TRUE, la versione pubblicata successiva verrà impostata su uno più della versione esistente con il valore più alto. Se utilizzato insieme a drop_all_versions, questo ha l'effetto di ripristinare lo stato originale della condivisione. Si noti che questo può confondere qualsiasi client delta esistente, quindi dovrebbe essere utilizzato con cura.

Procedura UPDATE_DEFAULT_RECIPIENT_PROPERTY

Aggiornare i valori predefiniti delle proprietà del destinatario. Questa procedura richiede che l'utente disponga dei privilegi di amministratore.

Sintassi

PROCEDURE UPDATE_DEFAULT_RECIPIENT_PROPERTY
(
  recipient_property   IN VARCHAR2,
  new_value_vc         IN VARCHAR2
);

Parametri

Parametro Descrizione
recipient_property Proprietà da aggiornare. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni per Condividi proprietà destinatario in DBMS_SHARE Costanti.
new_value_vc Il nuovo valore di proprietà.

Procedura UPDATE_DEFAULT_SHARE_PROPERTY

Aggiornare i valori predefiniti delle proprietà di condivisione.

Sintassi

PROCEDURE UPDATE_DEFAULT_SHARE_PROPERTY  
(
    share_property       IN VARCHAR2,
    new_value            IN VARCHAR2  
);

Parametri

Parametro Descrizione
share_property Proprietà da aggiornare. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni per Condividi proprietà in DBMS_SHARE Costanti.

È possibile leggere queste proprietà utilizzando la vista ALL_SHARE_DEFAULT_SETTINGS.

new_value Il nuovo valore di proprietà.

Procedura UPDATE_RECIPIENT_PROPERTY

Aggiorna una proprietà di un destinatario esistente.

Sintassi

PROCEDURE UPDATE_RECIPIENT_PROPERTY  
(
    recipient_name       IN VARCHAR2,
    recipient_property   IN VARCHAR2,
    new_value            IN VARCHAR2,
    recipient_owner      IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
recipient_name Nome del destinatario.
recipient_property Proprietà da aggiornare. Di seguito sono riportate alcune delle proprietà disponibili.
  • PROP_RECIPIENT_EMAIL
  • PROP_RECIPIENT_DESCRIPTION
  • PROP_RECIPIENT_LOG_LEVEL
  • PROP_RECIPIENT_SHARING_ID
  • PROP_RECIPIENT_PROFILE_URL
  • PROP_RECIPIENT_PAR_TYPE
  • PROP_RECIPIENT_MIN_PAR_LIFETIME
  • PROP_RECIPIENT_PAR_LIFETIME
  • PROP_RECIPIENT_TOKEN_LIFETIME
Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Condividi proprietà destinatario in DBMS_SHARE Costanti.
new_value Il nuovo valore di proprietà.
recipient_owner Il proprietario del destinatario. Il valore predefinito è lo schema corrente.

Procedura UPDATE_SHARE_JOB_PROPERTY

Modificare le proprietà di un job di condivisione in esecuzione. La procedura dovrebbe tornare rapidamente, ma potrebbe essere necessario un po 'di tempo per rendere effettive le modifiche.

Sintassi

PROCEDURE UPDATE_SHARE_JOB_PROPERTY  
(
    share_job_id         IN NUMBER,
    share_property       IN VARCHAR2,
    new_value            IN VARCHAR2,
    share_job_owner      IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
share_job_id L'ID del job di condivisione.
share_property Proprietà da aggiornare. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni di Condividi proprietà job in DBMS_SHARE Costanti.
new_value Il nuovo valore di proprietà.
share_job_owner Il proprietario del lavoro. Il valore predefinito è lo schema corrente.

Procedura UPDATE_SHARE_PROPERTY

Aggiornare una proprietà di una condivisione esistente.

Sintassi

PROCEDURE UPDATE_SHARE_PROPERTY  
(
    share_name           IN VARCHAR2,
    share_property       IN VARCHAR2,
    new_value            IN VARCHAR2,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_property Proprietà da aggiornare. Per informazioni sulle costanti utilizzate per questo parametro, vedere le descrizioni per Condividi proprietà in DBMS_SHARE Costanti.
new_value Il nuovo valore di proprietà.
share_owner Il proprietario della quota. Il valore predefinito è lo schema corrente.
Auto_commit Se TRUE (impostazione predefinita), il commit delle modifiche viene eseguito automaticamente. Se FALSE, l'utente deve eseguire il commit delle modifiche. Le modifiche sono visibili esternamente dopo l'esecuzione del commit.

Procedura UPDATE_SHARE_TABLE_PROPERTY

Aggiornare il valore della proprietà di una tabella condivisione esistente.

Sintassi

PROCEDURE UPDATE_SHARE_TABLE_PROPERTY  
(
    share_name           IN VARCHAR2,
    share_table_name     IN VARCHAR2,
    share_table_property IN VARCHAR2,
    new_value            IN VARCHAR2,
    share_schema_name    IN VARCHAR2 := NULL,
    share_owner          IN VARCHAR2 := NULL,
    auto_commit          IN BOOLEAN := TRUE  
);

Parametri

Parametro Descrizione
share_name Il nome della condivisione.
share_table_name Il nome della tabella di condivisione.
share_table_property Proprietà da aggiornare. Di seguito sono riportate alcune delle proprietà disponibili.
  • PROP_SHARE_TABLE_SPLIT_METHOD
  • PROP_SHARE_TABLE_SPLIT_COLUMNS
  • PROP_SHARE_TABLE_ORDER_COLUMNS
  • PROP_SHARE_TABLE_SHARE_COLUMNS
  • PROP_SHARE_TABLE_SPLIT_SIZE
  • PROP_SHARE_TABLE_GATHER_STATS
  • PROP_SHARE_TABLE_SPLIT_ROWS
  • PROP_SHARE_TABLE_FLASHBACK
new_value Il nuovo valore di proprietà.
share_schema_name Il nome dello schema di condivisione (impostazione predefinita: maiuscolo dell'utente corrente).
share_owner Il proprietario della quota. Il valore predefinito è lo schema corrente.
Auto_commit Se TRUE (impostazione predefinita), il commit delle modifiche viene eseguito automaticamente. Se FALSE, l'utente deve eseguire il commit delle modifiche. Le modifiche sono visibili esternamente dopo l'esecuzione del commit.

Funzione VALIDATE_CREDENTIAL

Convalidare un nome di credenziale, convertendolo in un formato canonico, se necessario.

La procedura genera un'eccezione se il nome non è un identificativo Oracle valido. credential_name viene restituito senza virgolette doppie, come apparirebbe nella colonna CREDENTIAL_NAME della vista USER_CREDENTIALS.

Sintassi

FUNCTION VALIDATE_CREDENTIAL  
(
        credential_name      IN VARCHAR2,
        check_if_exists      IN BOOLEAN := TRUE  
)  
RETURN VARCHAR2;

Parametri

Parametro Descrizione
credential_name Nome della credenziale da convalidare in formato database standard, con virgolette doppie se il nome non è un identificativo semplice.
check_if_exists Se TRUE, la funzione conferma anche l'esistenza della credenziale per l'utente corrente.

Procedura VALIDATE_SHARE_STORAGE

Verificare se lo storage specificato è adatto per le condivisioni con controllo delle versioni.

Sintassi

La sintassi della procedura, incluso il parametro di output validation_results.

 PROCEDURE VALIDATE_SHARE_STORAGE  
(
    storage_link_name    IN VARCHAR2,
    validation_results   IN OUT NOCOPY VARCHAR2,
    run_storage_tests    IN BOOLEAN := TRUE,
    storage_link_owner   IN VARCHAR2 := NULL  
);

Sintassi della procedura che non include il parametro di output validation_results.

PROCEDURE VALIDATE_SHARE_STORAGE  
(
    storage_link_name    IN VARCHAR2,
    run_storage_tests    IN BOOLEAN := TRUE,
    storage_link_owner   IN VARCHAR2 := NULL  
);

Parametri

Parametro Descrizione
storage_link_name Nome del collegamento allo storage cloud.
validation_results (Input e output facoltativi) Dettagli dei risultati della convalida restituiti in formato JSON.

Il validation_results include i risultati di ciascun test separato.

run_storage_tests Eseguire i test per convalidare lo storage. Se TRUE (impostazione predefinita), la procedura esegue il test di READ, WRITE, DELETE e PREAUTHENTICATED REQUESTS.
storage_link_owner Proprietario del collegamento allo storage cloud.

Esempio: risultati della convalida

{
  "READ":"PASSSED",
  "WRITE":"PASSSED",
  "CREATE_PAR":"PASSSED",
  "DELETE_PAR":"PASSSED",
  "DELETE":"PASSSED"
}

Procedura WAIT_FOR_JOB

Questa procedura attende il completamento del job di condivisione specificato.

Sintassi

PROCEDURE WAIT_FOR_JOB  
(
    share_job_id         IN NUMBER,
    completed            IN OUT NOCOPY BOOLEAN,
    maximum_wait         IN NUMBER := NULL  
);

Parametri

Parametro Descrizione
share_job_id L'ID del job di condivisione.
completed Indicatore completamento job.
maximum_wait Il periodo di attesa massimo, in secondi. Un valore NULL non implica limiti.