Zusammenfassung der Unterprogramme des Freigabeproducers

In dieser Tabelle werden die DBMS_SHARE-Packageprozeduren und -funktionen aufgeführt, mit denen Shares für Empfänger erstellt werden.

Unterprogramm Beschreibung
Prozedur ADD_TO_SHARE Hinzufügen einer Tabelle oder Ansicht zu einer Freigabe.
Prozedur ASSERT_SHAREABLE_OBJECT Rückgabe ohne Fehler, wenn das Objekt vorhanden ist und freigegeben werden kann.
Prozedur ASSERT_SHARING_ID Führen Sie grundlegende Validierungsprüfungen für eine gemeinsame ID aus, und geben Sie eine ID in kanonischer Form zurück.
Funktion CAN_CREATE_SHARE Diese Funktion prüft, ob das aktuelle Schema Share-Empfänger erstellen kann.
Funktion CAN_CREATE_SHARE_RECIPIENT Diese Funktion prüft, ob das aktuelle Schema Share-Empfänger erstellen kann.
Prozedur CLEAR_RECIPIENT_EVENTS Löschen Sie Ereignisse aus dem Ereignislog des Freigabeempfängers.
Prozedur CLEAR_SHARE_EVENTS Löschen Sie Ereignisse aus dem Ereignislog "Freigeben".
Prozedur CREATE_BEARER_TOKEN_CREDENTIAL Erstellen Sie Zugangsdaten, die für die Verwendung mit Delta Share Providern geeignet sind.
Prozedur CREATE_CLOUD_STORAGE_LINK Erstellen Sie einen benannten Cloud-Speicher-URI-Link.
Prozedur CREATE_OR_REPLACE_CLOUD_STORAGE_LINK Erstellen oder ersetzen Sie eine benannte Cloud-Speicher-URI.
Prozedur CREATE_OR_REPLACE_SHARE_RECIPIENT Share-Empfänger erstellen oder ersetzen
Prozedur CREATE_SHARE Erstellen Sie ein benanntes Freigabeobjekt.
Prozedur CREATE_SHARE_RECIPIENT Neuen Share-Empfänger erstellen.
Prozedur DROP_CLOUD_STORAGE_LINK Cloud-Speicherlink löschen.
Prozedur DROP_RECIPIENT Empfänger löschen
Prozedur DROP_SHARE Legen Sie eine Freigabe und den gesamten Inhalt ab.
Prozedur DROP_SHARE_LINK_VIEW Löschen Sie eine Ansicht, die von der Prozedur CREATE_SHARE_LINK_VIEW erstellt wurde.
Prozedur DROP_SHARE_VERSION Eine einzelne Freigabeversion löschen.
Prozedur DROP_SHARE_VERSIONS Löschen Sie eine Reihe von Freigabeversionen.
Prozedur DROP_UNUSED_SHARE_VERSIONS Löschen Sie alle Share-Versionen, die derzeit nicht verwendet werden.
Prozedur ENABLE_SCHEMA Schema für die gemeinsame Verwendung aktivieren oder deaktivieren
Funktion GET_ACTIVATION_LINK Generieren Sie den Link, der in E-Mails an den autorisierten Empfänger gesendet wird.
Funktion GET_PUBLISHED_IDENTITY Rufen Sie Daten zum aktuellen Benutzer ab, der von SET_PUBLISHED_IDENTITY festgelegt wurde.
Funktion GET_RECIPIENT_PROPERTY Gibt den Wert einer Eigenschaft für einen Empfänger zurück.
Funktion GET_SHARE_PROPERTY Rufen Sie den Eigenschaftswert einer vorhandenen Freigabe ab.
Funktion GET_SHARE_TABLE_PROPERTY Rufen Sie den Eigenschaftswert einer vorhandenen Share-Tabelle ab.
Prozedur GRANT_TO_RECIPIENT Gewähren Sie einem bestimmten Empfänger Zugriff auf eine Freigabe.
Prozedur POPULATE_SHARE_PROFILE Erstellen Sie ein Delta-Profil für einen Empfänger.
Prozedur PUBLISH_SHARE Veröffentlichen Sie eine Freigabe und kehren Sie sofort zurück.
Prozedur PUBLISH_SHARE_WAIT Veröffentlichen Sie eine Freigabe, und warten Sie, bis der Hintergrundjob abgeschlossen ist.
Prozedur PURGE_DETACHED_FILES Löschen oder vergessen Sie Parkettdateien, die von ihren Shares getrennt wurden.
Prozedur REMOVE_FROM_SHARE Entfernen einer Tabelle oder Ansicht aus einer Freigabe.
Prozedur RENAME_RECIPIENT Empfänger umbenennen
Prozedur RENAME_SHARE Benennen Sie eine Freigabe um.
Prozedur RENAME_SHARE_LINK Benennen Sie einen registrierten Share-Link um.
Prozedur RENAME_SHARE_SCHEMA Benennen Sie ein Share-Schema um.
Prozedur RENAME_SHARE_TABLE Benennen Sie eine Freigabetabelle um.
Prozedur REVOKE_FROM_RECIPIENT Entziehen Sie einem bestimmten Empfänger den Zugriff auf eine Freigabe.
Prozedur SET_CURRENT_SHARE_VERSION Ändern Sie die aktuelle Version einer Freigabe.
Prozedur SET_PUBLISHED_IDENTITY Legen Sie Daten zum aktuellen Benutzer fest, die den Empfängern veröffentlichter ORACLE-Shares bereitgestellt werden.
Prozedur SET_RECIPIENT_LOG_LEVEL Loggingebene für einen vorhandenen Share-Empfänger ändern.
Prozedur SET_SHARE_LOG_LEVEL Ändern Sie die Logebene für eine vorhandene Freigabe.
Prozedur SET_STORAGE_CREDENTIAL Legen Sie den Zugangsdatennamen für den angegebenen Speicher fest.
Prozedur STOP_JOB Stoppen Sie einen aktiven Share-Job.
Prozedur UNPUBLISH_SHARE Veröffentlichung einer Freigabe aufheben.
Prozedur UPDATE_DEFAULT_RECIPIENT_PROPERTY Aktualisieren Sie die Standardeigenschaftswerte des Empfängers.
Prozedur UPDATE_DEFAULT_SHARE_PROPERTY Aktualisieren Sie die Standardwerte für die Share-Eigenschaft.
Prozedur UPDATE_RECIPIENT_PROPERTY Aktualisieren Sie eine Eigenschaft eines vorhandenen Empfängers.
Prozedur UPDATE_SHARE_JOB_PROPERTY Eigenschaften eines laufenden Share-Jobs ändern.
Prozedur UPDATE_SHARE_PROPERTY Aktualisieren Sie eine Eigenschaft einer vorhandenen Freigabe.
Prozedur UPDATE_SHARE_TABLE_PROPERTY Aktualisieren Sie den Eigenschaftswert einer vorhandenen Share-Tabelle.
Funktion VALIDATE_CREDENTIAL Validieren Sie einen Zugangsdatennamen, und konvertieren Sie ihn bei Bedarf zuerst in kanonische Form.
Prozedur VALIDATE_SHARE_STORAGE Prüfen Sie, ob der angegebene Speicher für versionierte Shares geeignet ist.
Prozedur WAIT_FOR_JOB Diese Prozedur wartet, bis der angegebene Share-Job abgeschlossen ist.

Prozedur ADD_TO_SHARE

Hinzufügen einer Tabelle oder Ansicht zu einer Freigabe. Das Objekt wird für jeden externen Benutzer sichtbar, dem Zugriff auf die Freigabe erteilt wurde.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name einer vorhandenen Freigabe, der das Objekt erteilt wird.
table_name Der Name der gemeinsam zu verwendenden Entity (z.B. ein Tabellen- oder Ansichtsname).
owner Der Eigentümer der gemeinsam zu verwendenden Entität. Standardmäßig wird das aktuelle Schema verwendet.
share_table_name Der extern sichtbare Name der Tabelle. Standardmäßig ist dies der table_name in Großbuchstaben.
share_schema_name Das extern sichtbare Schema, in dem die Tabelle platziert wird. Standardmäßig ist dies der Eigentümer der Tabelle in Großbuchstaben. Das Schema wird automatisch erstellt, wenn es noch nicht vorhanden ist.
object_metadata Optionale Metadaten, die mit der gemeinsamen Entity verknüpft werden.
replace_existing Wenn TRUE vorhanden ist und diese share_table_name bereits vorhanden ist, wird die vorhandene table_name aus der Freigabe gelöscht und durch diese table_name ersetzt.

Wenn FALSE vorhanden ist und diese share_table_name bereits vorhanden ist, wird eine Ausnahme ausgelöst, die angibt, dass die Share-Tabelle bereits verwendet wird.

share_owner Der Eigentümer der Aktie.
auto_commit Bei 'Wahr' schreibt dieser Prozeduraufruf Änderungen fest, die erst nach dem Commit extern sichtbar sind. Der Standardwert ist FALSE, d.h. der Benutzer muss COMMIT ausführen, nachdem er diesen Aufruf ausgeführt hat, damit die Änderung sichtbar wird.

Prozedur ASSERT_SHAREABLE_OBJECT

Rückgabe ohne Fehler, wenn das Objekt vorhanden ist und freigegeben werden kann.

Syntax

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

Parameter

Parameter Beschreibung
object_name Der Name des Objekts.
object_owner Der Eigentümer des Objekts. Standard ist das aktuelle Schema.

Prozedur ASSERT_SHARING_ID

Führen Sie grundlegende Validierungsprüfungen für eine gemeinsame ID aus, und geben Sie eine ID in kanonischer Form zurück. Eine Ausnahme wird ausgelöst, wenn die ID offensichtlich ungültig ist.

Syntax

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

Parameter

Parameter Beschreibung
sharing_id Die zu prüfende ID.
out_sharing_id_type Der Typ der ID, sofern gültig. Beispiel: TENANCY oder DATABASE.

Funktion CAN_CREATE_SHARE

Diese Funktion prüft, ob das aktuelle Schema Share-Empfänger erstellen kann. Wenn Shares erstellt werden können, wird eine 1 zurückgegeben, andernfalls eine 0.

Syntax

FUNCTION CAN_CREATE_SHARE
RETURN NUMBER;

Beispiel: Vor und nach der Aktivierung des Admin-Schemas

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

Funktion CAN_CREATE_SHARE_RECIPIENT

Diese Funktion prüft, ob das aktuelle Schema Share-Empfänger erstellen kann. Wenn Shares erstellt werden können, wird eine 1 zurückgegeben, andernfalls eine 0.

Syntax

FUNCTION CAN_CREATE_SHARE_RECIPIENT
RETURN NUMBER;

Prozedur CLEAR_RECIPIENT_EVENTS

Löschen Sie Ereignisse aus dem Ereignislog des Freigabeempfängers.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der lokale Name des Share-Empfängers.
from_time Früheste Zeit für Ereignisse, die gelöscht oder NULL sein müssen.
to_time Späteste Zeit für Ereignisse, die gelöscht oder NULL sein sollen.
recipient_owner Das Schema, das Eigentümer des Empfängers ist.

Prozedur CLEAR_SHARE_EVENTS

Löschen Sie Ereignisse aus dem Ereignislog "Freigeben".

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
from_time Früheste Zeit für Ereignisse, die gelöscht oder NULL sein müssen.
to_time Späteste Zeit für Ereignisse, die gelöscht oder NULL sein sollen.
share_owner Das Schema, das Eigentümer der Freigabe ist.

Prozedur CREATE_BEARER_TOKEN_CREDENTIAL

Erstellen Sie Zugangsdaten, die für die Verwendung mit Delta Share Providern geeignet sind.

Dies ähnelt dem Aufruf CREATE_CREDENTIALS, nimmt jedoch explizite Werte anstelle eines Delta-Sharing-Profils an. Weitere Informationen finden Sie unter CREATE_CREDENTIALS Prozedur und Funktion.

Syntax

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

Parameter

Parameter Beschreibung
credential_name Der Name der neuen Zugangsdaten.
bearer_token Der Inhaber, falls bekannt.
token_endpoint Der Endpunkt, der aufgerufen werden soll, um ein neues Token abzurufen.
client_id Der Benutzername, der an token_endpoint gesendet werden soll.
client_secret Das Kennwort, das an token_endpoint gesendet werden soll.
token_refresh_rate Optionale Aktualisierungszeit in Sekunden.

Beispiel: Zugangsdaten mit einem festen Bearer-Token

In seiner einfachsten Form entspricht diese Prozedur dem Aufrufen von DBMS_CREDENTIAL mit dem Benutzernamen 'BEARER_TOKEN' und dem Bearer-Token selbst als Kennwort.

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

Beispiel: Zugangsdaten mit einem erneuerbaren Bearer-Token

Erstellen Sie Zugangsdaten, die ein kurzlebiges Bearer-Token enthalten, das von einem Tokenendpunkt abgerufen wurde. Das Bearer-Token wird einmal pro Stunde mit einem zweiten Berechtigungsnachweis aktualisiert, der aus der Client-ID und dem Secret aufgefüllt wird.

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

Prozedur CREATE_CLOUD_STORAGE_LINK

Erstellen Sie einen benannten Cloud-Speicher-URI-Link. Ein Cloud-Speicherlink ist eine benannte Verknüpfung zwischen einer OCI-Bucket-URI und einem lokalen Zugangsdatennamen.

Hinweis

Verwenden Sie die Prozedur SET_STORAGE_CREDENTIAL, um dem Speicherlink Zugangsdaten hinzuzufügen.

Syntax

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

Parameter

Beispiel

In diesem Beispiel wird ein Cloud-Speicherlink mit dem Namen MY_SHARE_STORAGE für die angegebene URL erstellt.

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

Prozedur CREATE_OR_REPLACE_CLOUD_STORAGE_LINK

Erstellen oder ersetzen Sie eine benannte Cloud-Speicher-URI. Ein Cloud-Speicherlink ist eine benannte Verknüpfung zwischen einer OCI-Bucket-URI und einem lokalen Zugangsdatennamen.

Hinweis

Verwenden Sie die Prozedur SET_STORAGE_CREDENTIAL, um dem Speicherlink Zugangsdaten hinzuzufügen.

Syntax

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

Parameter

Prozedur CREATE_OR_REPLACE_SHARE_RECIPIENT

Share-Empfänger erstellen oder ersetzen Sie müssen mindestens eine E-Mail-Adresse oder Sharing-ID angeben.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der lokale Name des Share-Empfängers. Einige Namen sind nicht zulässig (z.B. MY_TENANCY).
description Eine Beschreibung des Empfängers.
recipient_owner Das Schema, das Eigentümer des Empfängers ist.
email Eine E-Mail, die für den OAUTH-Benutzer registriert wird.
sharing_id Die Freigabe-ID des Empfängers aus der GET_SHARING_ID-Funktion.

Prozedur CREATE_SHARE

Erstellen Sie ein benanntes Freigabeobjekt.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares. Dieser Name wird in Großbuchstaben geschrieben, da bei Delta-Shares die Groß-/Kleinschreibung nicht beachtet wird. Der name darf standard-Oracle-konventionen umfassen und darf daher maximal 128 zeichen umfassen und darf keinen einfachen bezeichner in doppelte anführungszeichen setzen. Der einzige Unterschied ist, dass es in Großbuchstaben geschrieben wird, auch wenn es doppelt zitiert ist.
share_type Der Typ der Aktie. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Gemeinsame Typen in DBMS_SHARE Konstanten.
storage_link_name Der Name des Cloud-Speicherlinks, in dem die Objekte erstellt werden. Der Benutzer muss über Lese-/Schreibzugriff auf diesen Speicher verfügen und über die Möglichkeit verfügen, im Voraus authentifizierte Anforderungen im Speicher zu erstellen. Der Parameter ist für versionierte Shares erforderlich und für aktuelle Shares optional.
storage_link_owner Der Eigentümer des Cloud-Speicherlinks, in dem Objekte erstellt werden.
description Eine lokale Beschreibung für das Share.
public_description Eine öffentliche Beschreibung der Aktie.
configuration Ein Konfigurationsdokument, das definiert, wie Objekte erstellt werden.
force_create Setzen Sie force_create auf TRUE, um das Share neu zu definieren, falls es vorhanden ist.
share_owner Der Eigentümer der Aktie.
auto_commit Bei 'Wahr' schreibt dieser Prozeduraufruf Änderungen fest, die erst nach dem Commit extern sichtbar sind. Der Standardwert ist FALSE, d.h. der Benutzer muss COMMIT ausführen, nachdem er diesen Aufruf ausgeführt hat, damit die Änderung sichtbar wird.
log_level Ereignisprotokollierungsebene. Dadurch wird die in der ALL_SHARE_EVENTS-Ansicht erfasste Detailmenge gesteuert. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Logebene in DBMS_SHARE Konstanten.
run_storage_tests Wenn dieser Parameter TRUE ist, führt DBMS_SHARE Tests aus, um zu prüfen, ob der angegebene Share Storage-Link die richtigen Berechtigungen hat.

Wenn dieser Parameter FALSE ist, führt die Prozedur keine Prüfungen zum Zeitpunkt der Erstellung aus. Dies kann zu Fehlern später, während der Veröffentlichung oder des Verbrauchs der Aktie führen.

Oracle empfiehlt, dass Sie TRUE für diesen Parameter angeben.

Prozedur CREATE_SHARE_RECIPIENT

Neuen Share-Empfänger erstellen.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der lokale Name des Share-Empfängers. Einige Namen sind nicht zulässig. Beispiel: MY_TENANCY.
description Eine Beschreibung des Empfängers.
recipient_owner Das Schema, das Eigentümer des Empfängers ist.
email Eine E-Mail, die für den OAUTH-Benutzer registriert wird. Sie müssen mindestens eine E-Mail- oder Sharing-ID angeben.
sharing_id Die Freigabe-ID des Empfängers aus der GET_SHARING_ID-Funktion. Sie müssen mindestens eine E-Mail- oder Sharing-ID angeben.

Prozedur DROP_CLOUD_STORAGE_LINK

Cloud-Speicherlink löschen.

Syntax

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

Parameter

Prozedur DROP_RECIPIENT

Empfänger löschen Der gesamte Zugriff auf den Empfänger wird widerrufen.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der Name des Share-Empfängers.
owner Das Schema, das den Empfänger definiert.

Prozedur DROP_SHARE

Legen Sie eine Freigabe und den gesamten Inhalt ab. Der künftige Zugang der Verbraucher zu diesem Anteil wird enden.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des zu löschenden Shares.
share_owner Der Eigentümer des zu löschenden Anteils.
destroy_objects Wenn TRUE, alle Objekte löschen, die für das Share erstellt wurden. Der Standardwert ist TRUE.

Prozedur DROP_SHARE_LINK_VIEW

Löschen Sie eine Ansicht, die von der Prozedur CREATE_SHARE_LINK_VIEW erstellt wurde.

Weitere Informationen finden Sie unter Prozedur CREATE_SHARE_LINK_VIEW.

Syntax

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

Parameter

Prozedur DROP_SHARE_VERSION

Eine einzelne Freigabeversion löschen. Beachten Sie, dass Sie die aktuelle Version nicht löschen können.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_version Die zu löschende Version. Sie können die aktuelle Version nicht löschen.
destroy_objects Löschen Sie gegebenenfalls jedes zugehörige Objekt im Cloud-Speicher.
force_drop Löschen Sie die Freigabeversion, auch wenn eine ausstehende PAR-Datei in der Version vorhanden ist.
share_owner Der Eigentümer der Aktie.

Prozedur DROP_SHARE_VERSIONS

Löschen Sie eine Reihe von Freigabeversionen. Beachten Sie, dass Sie die aktuelle Version mit diesem Verfahren nicht löschen können.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
from_share_version Die niedrigste zu löschende Version.
to_share_version Die höchste zu löschende Version.
destroy_objects Löschen Sie gegebenenfalls jedes zugehörige Objekt im Cloud-Speicher.
force_drop Löschen Sie die Freigabeversion, auch wenn eine ausstehende PAR-Datei in der Version vorhanden ist.
share_owner Der Eigentümer der Aktie.

Prozedur DROP_UNUSED_SHARE_VERSIONS

Löschen Sie alle Share-Versionen, die derzeit nicht verwendet werden.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
destroy_objects Löschen Sie gegebenenfalls jedes zugehörige Objekt im Cloud-Speicher.
share_owner Der Eigentümer der Aktie.

Prozedur ENABLE_SCHEMA

Schema für die gemeinsame Verwendung aktivieren oder deaktivieren Diese Prozedur muss vom ADMIN-Benutzer ausgeführt werden.

Syntax

Benutzer können Delta-Shares nutzen, ohne mit diesem Verfahren aktiviert zu sein. Shares können jedoch nicht erstellt oder veröffentlicht werden. Die Freigabe ist standardmäßig für alle Schemas, einschließlich ADMIN, deaktiviert.

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

Parameter

Parameter Beschreibung
schema_name Das Schema, das aktiviert oder deaktiviert werden soll.
enable TRUE zum Aktivieren, FALSE zum Deaktivieren.
privileges Das Berechtigungsargument hat Bitmap-Werte. Wenn Sie das Argument NULL lassen, wird standardmäßig PRIV_CREATE_SHARE + PRIV_CREATE_RECIPIENT + PRIV_CONSUME_ORACLE_SHARE verwendet.

Bitmap-Werte:
  • PRIV_CREATE_SHARE
    Benutzern das Erstellen von Veröffentlichungsfreigaben in ihrem eigenen Schema erlauben
    PRIV_CREATE_SHARE         CONSTANT PLS_INTEGER := 1;
  • PRIV_CREATE_RECIPIENT

    Ermöglichen Sie es Benutzern, Freigabeempfänger in ihrem eigenen Schema zu erstellen.

    PRIV_CREATE_RECIPIENT     CONSTANT PLS_INTEGER := 2;
  • PRIV_CONSUME_ORACLE_SHARE

    Ermöglichen Sie Benutzern, Oracle-zu-Oracle-Live-Shares zu nutzen.

    PRIV_CONSUME_ORACLE_SHARE CONSTANT PLS_INTEGER := 4;
  • PRIV_ORDS_ACL

    Erteilen Sie dem Benutzer auf dem lokalen ORDS-Endpunkt eine ACL. Dies ist erforderlich, damit der Benutzer Bearer-Token auf lokal erstellten Shares generieren kann.

    PRIV_ORDS_ACL             CONSTANT PLS_INTEGER := 8;

Funktion GET_ACTIVATION_LINK

Generieren Sie den Link, der in E-Mails an den autorisierten Empfänger gesendet wird. Dieser Aktivierungslink führt zur Downloadseite, auf der der Empfänger auf eine Schaltfläche klickt, um das Delta-Profil abzurufen.

Syntax

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;

Parameter

Beispiel: Druckaktivierungslink zum Bildschirm

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.

Funktion GET_PUBLISHED_IDENTITY

Rufen Sie Daten zum aktuellen Benutzer ab, der von SET_PUBLISHED_IDENTITY festgelegt wurde.

Syntax

FUNCTION GET_PUBLISHED_IDENTITY
  RETURN CLOB;

Beispiel

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"
}

Funktion GET_RECIPIENT_PROPERTY

Gibt den Wert einer Eigenschaft für einen Empfänger zurück.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der Name des Empfängers.
recipient_property Die Immobilie zu bekommen. Zu diesen Eigenschaften gehören:
  • 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

Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Eigenschaften gemeinsam verwenden unter DBMS_SHARE Konstanten.

recipient_owner Der Eigentümer des Empfängers. Standard ist der aktuelle Benutzer.

Funktion GET_SHARE_PROPERTY

Rufen Sie den Eigenschaftswert einer vorhandenen Freigabe ab.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_property Der abzurufende Eigenschaftswert. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Eigenschaften gemeinsam verwenden unter DBMS_SHARE Konstanten.
share_owner Der Eigentümer der Aktie. Standard ist der aktuelle Benutzer.

Funktion GET_SHARE_TABLE_PROPERTY

Rufen Sie den Eigenschaftswert einer vorhandenen Share-Tabelle ab.

Syntax

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;

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_table_name Der Name der Freigabetabelle.
share_table_property Die Eigenschaft "Share Table", die aktualisiert werden soll. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Tabelleneigenschaften gemeinsam verwenden in DBMS_SHARE Konstanten.
share_schema_name Der Name des Share-Schemas. Der Standardwert ist Großbuchstaben des aktuellen Benutzers.
share_owner Der Eigentümer der Aktie.

Prozedur GRANT_TO_RECIPIENT

Gewähren Sie einem bestimmten Empfänger Zugriff auf eine Freigabe. Share und Empfänger müssen beide zum selben Schema gehören.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares, das erteilt werden soll.
recipient_name Der Name des Empfängers.
owner Der Eigentümer der Aktie und des Empfängers.
auto_commit Der Parameter auto_commit wird ignoriert. Diese Prozedur wird immer festgeschrieben.

Prozedur POPULATE_SHARE_PROFILE

Erstellen Sie ein Delta-Profil für einen Empfänger. Sie können dies auf den Bildschirm drucken oder irgendwo hochladen. Beispiel: Für einen Objekt-Bucket mit DBMS_CLOUD.EXPORT_DATA.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der lokale Name des Empfängers.
share_profile Das Share-Profil ohne Bearer-Token.
recipient_owner Das Schema, das Eigentümer des Empfängers ist.

Beispiel: Drucken Sie das Profil auf den Bildschirm.

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.."
}

Prozedur PUBLISH_SHARE

Veröffentlichen Sie eine Freigabe und kehren Sie sofort zurück.

Die Veröffentlichung wird im Hintergrund fortgesetzt. Sie können den Status des Jobs prüfen, indem Sie die View USER_SHARE_JOBS abfragen. Weitere Informationen finden Sie in der Ansicht USER_SHARE_JOBS.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des zu veröffentlichenden Shares.
share_owner Der Share-Eigentümer, der der aktuelle Benutzer oder NULL sein muss.
drop_prior_versions Bei 'Wahr' werden alle vorherigen Versionen der Freigabe gelöscht. Beachten Sie, dass Versionen nur gelöscht werden, wenn keine ausstehenden vorab authentifizierten Anforderungen (PARs) vorhanden sind.
share_job_dop Geben Sie die maximale Anzahl von dbms_scheduler-Jobs an, die zum Veröffentlichen der Freigabe verwendet werden. Behalten Sie den Wert NULL bei, um die Systemstandardnummer zu verwenden.
share_job_priority Geben Sie eine relative Priorität dieser Share-Publikation im Vergleich zu anderen an. Wenn zwei Aktien gleichzeitig veröffentlicht werden, wird die mit der höchsten Priorität zuerst verarbeitet, selbst wenn sie später gestartet wurde.
job_class Die Scheduler-Jobklasse aus all_scheduler_job_classes, mit der das Share veröffentlicht wird.
force_job_class Verwenden Sie die angegebene job_class, auch wenn der Administrator eine andere Standardjobklasse definiert hat.

Prozedur PUBLISH_SHARE_WAIT

Veröffentlichen Sie eine Freigabe, und warten Sie, bis der Hintergrundjob abgeschlossen ist. Die Veröffentlichung wird fortgesetzt, auch wenn der Anruf unterbrochen wird.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des zu veröffentlichenden Shares.
share_owner Der Share-Eigentümer, der der aktuelle Benutzer oder NULL sein muss.
drop_prior_versions Bei 'Wahr' werden alle vorherigen Versionen der Freigabe gelöscht. Beachten Sie, dass Versionen nur gelöscht werden, wenn keine ausstehenden vorab authentifizierten Anforderungen (PARs) vorhanden sind.
share_job_dop Geben Sie die maximale Anzahl von dbms_scheduler-Jobs an, die zum Veröffentlichen der Freigabe verwendet werden. Behalten Sie den Wert NULL bei, um die Systemstandardnummer zu verwenden.
share_job_priority Geben Sie eine relative Priorität dieser Share-Publikation im Vergleich zu anderen an. Wenn zwei Aktien gleichzeitig veröffentlicht werden, wird die mit der höchsten Priorität zuerst verarbeitet, selbst wenn sie später gestartet wurde.
job_class Die Scheduler-Jobklasse aus all_scheduler_job_classes, mit der das Share veröffentlicht wird.
force_job_class Verwenden Sie die angegebene job_class, auch wenn der Administrator eine andere Standardjobklasse definiert hat.

Prozedur PURGE_DETACHED_FILES

Löschen oder vergessen Sie Parkettdateien, die von ihren Shares getrennt wurden.

Syntax

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

Eine Version von PURGE_DETACHED_FILES, die gegebenenfalls die ID des Löschjobs zurückgibt.

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

Parameter

Parameter Beschreibung
purge_job_id Die Löschjob-ID.
file_pattern Ein optionales LIKE-Muster für die Dateien, die gelöscht werden sollen.
credential_name Optionale Zugangsdaten zum Löschen der Dateien.
purge_mode Gibt an, wie die Dateien gelöscht werden. Folgende Werte sind im Löschmodus verfügbar:
  • PURGE_DROP
    Versuchen Sie, die Dateien mit den angegebenen Zugangsdaten zu löschen. Wenn die Datei nicht gelöscht werden kann, wird sie weiterhin in den Ansichten *_SHARE_DETACHED_FILES aufgeführt.
    PURGE_DROP             CONSTANT PLS_INTEGER := 1;
  • PURGE_DROP_FORCE
    Versuchen Sie, die Dateien mit den angegebenen Zugangsdaten zu löschen. Die Datei wird aus den Ansichten *_SHARE_DETACHED_FILES entfernt, selbst wenn der Versuch, die Datei zu löschen, erneut fehlschlägt.
    PURGE_DROP_FORCE       CONSTANT PLS_INTEGER := 2;
  • PURGE_FORGET
    Entfernen Sie die *_SHARE_DETACHED_FILES-Ansichten der Dateien, ohne zu versuchen, sie zu löschen.
    PURGE_FORGET           CONSTANT PLS_INTEGER := 3;
owner_id Die Eigentümer-ID, deren Dateien gelöscht werden sollen.

Prozedur REMOVE_FROM_SHARE

Entfernen einer Tabelle oder Ansicht aus einer Freigabe.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name einer vorhandenen Freigabe, der das Objekt entzogen wird.
share_table_name Der Name der zu entziehenden Share-Tabelle. Dieser muss mit dem extern sichtbaren Namen übereinstimmen, sodass die Eingabe in Großbuchstaben geschrieben wird.
share_schema_name Der Name des Share-Schemas. Der Standardwert ist Großbuchstaben des aktuellen Benutzers.
share_owner Der Eigentümer der Aktie.
auto_commit Bei 'Wahr' schreibt dieser Prozeduraufruf Änderungen fest, die erst nach dem Commit extern sichtbar sind. Der Standardwert ist FALSE, d.h. der Benutzer muss COMMIT ausführen, nachdem er diesen Aufruf ausgeführt hat, damit die Änderung sichtbar wird.

Prozedur RENAME_RECIPIENT

Empfänger umbenennen Bei diesem Verfahren wird nur der lokale Name des Empfängers geändert. Die externe Definition des Empfängers, z.B. der Name des OAUTH-Benutzers oder die Freigabe-ID, wird nicht geändert.

Syntax

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

Parameter

Parameter Beschreibung
old_recipient_name Der aktuelle Name des Share-Empfängers.
new_recipient_name Der neue Name des Share-Empfängers.
owner Das Schema, das den Empfänger definiert.
auto_commit Wenn TRUE, werden die Änderungen automatisch festgeschrieben. Änderungen werden erst nach dem Commit extern sichtbar. Der Standardwert ist TRUE.

Prozedur RENAME_SHARE

Benennen Sie eine Freigabe um. Bei diesem Verfahren ist Vorsicht geboten, da die Änderung Auswirkungen auf alle bestehenden Verbraucher hat, deren Zugang auf dem vorherigen Namen basiert. Verbraucher werden nicht direkt benachrichtigt oder aktualisiert.

Syntax

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

Parameter

Parameter Beschreibung
old_share_name Der aktuelle Name des Shares.
new_share_name Der neue Name der Freigabe.
share_owner Der Eigentümer der Aktie.
auto_commit Wenn TRUE, werden die Änderungen automatisch festgeschrieben. Änderungen werden erst nach dem Commit extern sichtbar. Der Standardwert ist TRUE.

Prozedur RENAME_SHARE_LINK

Benennen Sie einen registrierten Share-Link um.

Syntax

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

Parameter

Prozedur RENAME_SHARE_SCHEMA

Benennen Sie ein Share-Schema um.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
old_schema_name Der alte Name des Schemas.
new_schema_name Der neue Name des Schemas.
share_owner Der Eigentümer der Aktie. Standard ist das aktuelle Schema.
auto_commit Wenn TRUE, werden die Änderungen automatisch festgeschrieben. Änderungen werden erst nach dem Commit extern sichtbar. Der Standardwert ist FALSE.

Prozedur RENAME_SHARE_TABLE

Benennen Sie eine Freigabetabelle um.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_schema_name Der Name des Share-Schemas.
old_share_table_name Der alte Name der Freigabetabelle.
new_share_table_name Der neue Name der Freigabetabelle.
share_owner Der Eigentümer der Aktie.
auto_commit Wenn TRUE, werden die Änderungen automatisch festgeschrieben. Änderungen werden erst nach dem Commit extern sichtbar. Der Standardwert ist FALSE.

Prozedur REVOKE_FROM_RECIPIENT

Entziehen Sie einem bestimmten Empfänger den Zugriff auf eine Freigabe.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares, das widerrufen werden soll.
recipient_name Der Name des Empfängers.
owner Der Eigentümer der Aktie und des Empfängers.
auto_commit Wenn TRUE, werden die Änderungen automatisch festgeschrieben. Änderungen werden erst nach dem Commit extern sichtbar. Der Standardwert ist FALSE.

Prozedur SET_CURRENT_SHARE_VERSION

Ändern Sie die aktuelle Version einer Freigabe.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_version Die neue Version oder NULL. Die Version muss vorhanden und gültig sein. Wenn share_version NULL ist, wird keine Version als AKTUELL markiert, und die Freigabe wird "Nicht veröffentlicht" angezeigt.
share_owner Der Eigentümer der Aktie. Standard ist das aktuelle Schema.

Prozedur SET_PUBLISHED_IDENTITY

Legen Sie Daten zum aktuellen Benutzer fest, die den Empfängern veröffentlichter ORACLE-Shares bereitgestellt werden.

Syntax

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

Parameter

Parameter Beschreibung
metadata Wenn die Provideridentität bereits festgelegt wurde, müssen nur die Elemente, die der Aufrufer aktualisieren möchte, in die JSON aufgenommen werden. Wenn Sie einen NULL-Wert für ein Element angeben, wird dieses Element aus der gespeicherten Identität entfernt. "Name", "Beschreibung" und "Kontakt" können auf diese Weise jedoch nicht entfernt werden.

Wenn das Metadatenargument NULL ist, wird die vorhandene Provideridentität gelöscht. Dies kann nur geschehen, wenn der aktuelle Benutzer keine veröffentlichten Shares hat.

Wenn die Provideridentität noch nicht festgelegt wurde, muss die JSON mindestens Folgendes enthalten:
  • Name (<=128 Byte)
  • Beschreibung (<=4000 Byte)
  • Kontaktwerte (<=4000 Byte)

Zusätzliche Elemente können nach Ermessen des Anrufers enthalten sein.

Beispiel: Zusätzliche Elemente in die JSON-Metadaten aufnehmen

Neben den erforderlichen Angaben zu "name", "description" und "contact" enthält dieses Beispiel den zusätzlichen Punkt "schedule".
{
  "name" : "A sample share provider",
  "description" : "Test of share provider metadata",
  "contact" : "provider1@example.com".
  "schedule" : "New data provided on alternate rainy Fridays"
}

Beispiel: "Beschreibung" aktualisieren und "Zeitplan" entfernen

Um "Beschreibung" zu aktualisieren und "Zeitplan" zu entfernen, kann die folgende JSON verwendet werden:
{
  "description" : "The Share Provider You Can Trust!(tm)",
  "schedule" : null
}

Prozedur SET_RECIPIENT_LOG_LEVEL

Loggingebene für einen vorhandenen Share-Empfänger ändern.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der lokale Name des Share-Empfängers.
log_level Ereignisprotokollierungsebene. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Logebene in DBMS_SHARE Konstanten.
recipient_owner Das Schema, das Eigentümer des Empfängers ist.

Prozedur SET_SHARE_LOG_LEVEL

Ändern Sie die Logebene für eine vorhandene Freigabe.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
log_level Ereignisprotokollierungsebene. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Logebene in DBMS_SHARE Konstanten.
share_owner Der Eigentümer der Aktie.

Prozedur SET_STORAGE_CREDENTIAL

Legen Sie den Zugangsdatennamen fest, der vom aktuellen Benutzer verwendet wird, wenn er versucht, auf den angegebenen Speicher zuzugreifen.

Syntax

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

Parameter

Prozedur STOP_JOB

Versuch, einen aktiven Share-Job zu stoppen. Die Prozedur sollte schnell zurückkehren, aber es kann einige Zeit dauern, bis der zugehörige Job gestoppt ist.

Syntax

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

Parameter

Parameter Beschreibung
share_job_id Die ID des Share-Jobs.
share_job_owner Der Eigentümer des Jobs. Standard ist das aktuelle Schema.

Prozedur UNPUBLISH_SHARE

Veröffentlichung einer Freigabe aufheben.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
out_share_job_id Die ID eines Freigabejobs, der ausgeführt werden muss, um diesen Befehl zu verarbeiten.
share_owner Der Eigentümer der Aktie. Standard ist das aktuelle Schema.
drop_all_versions Bei 'Wahr' werden alle vorhandenen Versionen zusammen mit dem zugehörigen Speicher gelöscht.

Wenn drop_all_versions FALSE ist, sind weiterhin alle vorhandenen Versionen vorhanden, aber die Freigabe ist für Empfänger nicht sichtbar. Ein späterer Aufruf von PUBLISH_SHARE oder SET_CURRENT_SHARE_VERSION macht sie wieder sichtbar.

restart_versions Versionsnummerierung neu starten. Wenn FALSE verwendet wird, entspricht die nächste veröffentlichte Versionsnummer derjenigen, wenn keine Versionen gelöscht wurden.

Wenn TRUE, wird die nächste veröffentlichte Version auf mehr als die höchste vorhandene Version gesetzt. Bei Verwendung in Verbindung mit drop_all_versions führt dies dazu, dass das Share auf seinen ursprünglichen Status zurückgesetzt wird. Beachten Sie, dass dies bestehende Delta-Clients verwirren kann, daher sollte es sorgfältig verwendet werden.

Prozedur UPDATE_DEFAULT_RECIPIENT_PROPERTY

Aktualisieren Sie die Standardeigenschaftswerte des Empfängers. Für diese Prozedur muss der Benutzer Administratorberechtigungen haben.

Syntax

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

Parameter

Parameter Beschreibung
recipient_property Die zu aktualisierende Eigenschaft. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Empfängereigenschaften gemeinsam verwenden in DBMS_SHARE Konstanten.
new_value_vc Der neue Eigenschaftswert.

Prozedur UPDATE_DEFAULT_SHARE_PROPERTY

Aktualisieren Sie die Standardwerte für die Share-Eigenschaft.

Syntax

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

Parameter

Parameter Beschreibung
share_property Die zu aktualisierende Eigenschaft. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Eigenschaften gemeinsam verwenden unter DBMS_SHARE Konstanten.

Diese Eigenschaften können mit der ALL_SHARE_DEFAULT_SETTINGS-Ansicht gelesen werden.

new_value Der neue Eigenschaftswert.

Prozedur UPDATE_RECIPIENT_PROPERTY

Aktualisieren Sie eine Eigenschaft eines vorhandenen Empfängers.

Syntax

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

Parameter

Parameter Beschreibung
recipient_name Der Name des Empfängers.
recipient_property Die zu aktualisierende Eigenschaft. Zu diesen Eigenschaften gehören:
  • 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
Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen unter Eigenschaften für Empfänger freigeben in DBMS_SHARE Konstanten.
new_value Der neue Eigenschaftswert.
recipient_owner Der Eigentümer des Empfängers. Standard ist das aktuelle Schema.

Prozedur UPDATE_SHARE_JOB_PROPERTY

Eigenschaften eines laufenden Share-Jobs ändern. Das Verfahren sollte schnell zurückkehren, aber es kann einige Zeit dauern, bis die Änderungen wirksam werden.

Syntax

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

Parameter

Parameter Beschreibung
share_job_id Die ID des Share-Jobs.
share_property Die zu aktualisierende Eigenschaft. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Jobsigenschaften gemeinsam verwenden unter DBMS_SHARE Konstanten.
new_value Der neue Eigenschaftswert.
share_job_owner Der Eigentümer des Jobs. Standard ist das aktuelle Schema.

Prozedur UPDATE_SHARE_PROPERTY

Aktualisieren Sie eine Eigenschaft einer vorhandenen Freigabe.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_property Die zu aktualisierende Eigenschaft. Informationen zu Konstanten, die für diesen Parameter verwendet werden, finden Sie in den Beschreibungen für Eigenschaften gemeinsam verwenden unter DBMS_SHARE Konstanten.
new_value Der neue Eigenschaftswert.
share_owner Der Eigentümer der Aktie. Standard ist das aktuelle Schema.
Auto_commit Bei TRUE (Standardwert) werden die Änderungen automatisch festgeschrieben. Bei FALSE muss der Benutzer die Änderungen festschreiben. Änderungen werden nach dem Commit extern sichtbar.

Prozedur UPDATE_SHARE_TABLE_PROPERTY

Aktualisieren Sie den Eigenschaftswert einer vorhandenen Share-Tabelle.

Syntax

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

Parameter

Parameter Beschreibung
share_name Der Name des Shares.
share_table_name Der Name der Freigabetabelle.
share_table_property Die zu aktualisierende Eigenschaft. Zu diesen Eigenschaften gehören:
  • 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 Der neue Eigenschaftswert.
share_schema_name Der Name des Share-Schemas (Standardwert ist Großbuchstaben des aktuellen Benutzers).
share_owner Der Eigentümer der Aktie. Standard ist das aktuelle Schema.
Auto_commit Bei TRUE (Standardwert) werden die Änderungen automatisch festgeschrieben. Bei FALSE muss der Benutzer die Änderungen festschreiben. Änderungen werden nach dem Commit extern sichtbar.

Funktion VALIDATE_CREDENTIAL

Validieren Sie einen Zugangsdatennamen, und konvertieren Sie ihn bei Bedarf zuerst in kanonische Form.

Die Prozedur löst eine Ausnahme aus, wenn der Name keine gültige Oracle-ID ist. Die credential_name wird ohne doppelte Anführungszeichen zurückgegeben, wie sie in der Spalte CREDENTIAL_NAME der Ansicht USER_CREDENTIALS angezeigt würde.

Syntax

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

Parameter

Parameter Beschreibung
credential_name Der Name der Zugangsdaten, die in Standarddatenbankform validiert werden sollen, mit doppelten Anführungszeichen, wenn der Name kein einfacher Bezeichner ist.
check_if_exists Wenn TRUE, bestätigt die Funktion auch, dass die Zugangsdaten für den aktuellen Benutzer vorhanden sind.

Prozedur VALIDATE_SHARE_STORAGE

Prüfen Sie, ob der angegebene Speicher für versionierte Shares geeignet ist.

Syntax

Die Prozedurensyntax einschließlich des Ausgabeparameters 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  
);

Die Prozedurensyntax enthält nicht den Ausgabeparameter validation_results.

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

Parameter

Parameter Beschreibung
storage_link_name Der Linkname für den Cloud-Speicher.
validation_results (Optionale Eingabe- und Ausgabe) Validierungsergebnisdetails in JSON-Form zurückgegeben.

Die validation_results enthält die Ergebnisse für jeden separaten Test.

run_storage_tests Führen Sie Tests aus, um den Speicher zu validieren. Bei 'Wahr' (Standard) werden READ-, WRITE-, DELETE- und PREAUTHENTICATED REQUESTS getestet.
storage_link_owner Der Eigentümer des Cloud-Speicherlinks.

Beispiel: Validierungsergebnisse

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

Prozedur WAIT_FOR_JOB

Diese Prozedur wartet, bis der angegebene Share-Job abgeschlossen ist.

Syntax

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

Parameter

Parameter Beschreibung
share_job_id Die ID des Share-Jobs.
completed Jobabschlussindikator.
maximum_wait Die maximale Wartezeit in Sekunden. Ein NULL-Wert impliziert keine Begrenzung.