Create and Manage Table Hyperlink Groups
Table Hyperlink Groups allow you to access data from multiple objects or multiple SQL select statements through a single URL. Using a Table Hyperlink Group simplifies data retrieval by consolidating information from various objects into one access point (URL).
- Create a Table Hyperlink Group
Shows you the steps to create a Table Hyperlink Group that provides access to multiple Table Hyperlinks with a single URL. - Add a Table Hyperlink Group Member
At any time a user with appropriate privileges can add a member to a Table Hyperlink Group. - Remove a Table Hyperlink Group Member
At any time a user with appropriate privileges can remove a member from a Table Hyperlink Group. - Invalidate a Table Hyperlink Group
At any time a user with appropriate privileges can invalidate a Table Hyperlink Group.
Create a Table Hyperlink Group
Shows you the steps to create a Table Hyperlink Group that provides access to multiple Table Hyperlinks with a single URL.
When you access a Table Hyperlink Group it uses the privileges granted to the
database user who creates the Table Hyperlink Group. The user that creates a Table Hyperlink
Group should have the minimum privileges required for providing access to the data. To
maintain security, Oracle recommends that you do not run DBMS_DATA_ACCESS.CREATE_URL
as the ADMIN user.
To create a Table Hyperlink Group:
You can use
DBMS_DATA_ACCESS.LIST_ACTIVE_URLS
and
DBMS_DATA_ACCESS.LIST_MEMBERS
to list Table Hyperlink Groups and Table
Hyperlink Group members. See List Table Hyperlinks, Groups, and Group Members for more information.
Notes for creating a Table Hyperlink Group:
-
The
result
includes thepreauth_url
value is the URL you use to access the Table Hyperlink Group. See Use a Table Hyperlink Group to Access Data for more information. -
When you generate a Table Hyperlink Group on an Autonomous Database instance with a private endpoint, the result includes a name
private_preauth_url
with the value of the form:"https://private-endpoint/adb/p/parurl-token/data"
.When you generate a Table Hyperlink Group on an Autonomous Database instance with a private endpoint and the private endpoint is configured with Allow public access enabled, the result includes both the
preauth_url
for the public endpoint andprivate_preauth_url
.See Configure Private Endpoints and Use a Private Endpoint with Public Access Allowed for more information.
-
Use
DBMS_DATA_ACCESS.EXTEND_URL
to extend the life of a Table Hyperlink Group. When you runDBMS_DATA_ACCESS.EXTEND_URL
with anid
that is for a Table Hyperlink Group, this only extends the expiration of the members added when you create the group withDBMS_DATA_ACCESS.CREATE_URL
(this does not include Table Hyperlinks added withDBMS_DATA_ACCESS.ADD_MEMBER
). Table Hyperlinks added withDBMS_DATA_ACCESS.ADD_MEMBER
also exist independently outside of the context of the Table Hyperlink Group and you can runDBMS_DATA_ACCESS.EXTEND_URL
independently on those Table Hyperlinks.See EXTEND_URL Procedure for more information.
-
See Notes for Creating a Table Hyperlink for additional information on optional parameters for
DBMS_DATA_ACCESS.CREATE_URL
.
Parent topic: Create and Manage Table Hyperlink Groups
Add a Table Hyperlink Group Member
At any time a user with appropriate privileges can add a member to a Table Hyperlink Group.
Use DBMS_DATA_ACCESS.ADD_MEMBER
to add an existing Table Hyperlink to
a group. For example:
DECLARE
status CLOB;
BEGIN
DBMS_DATA_ACCESS.ADD_MEMBER
(
id => 'Vd1Px7QWASdqDbnndiuwTAyyEstv82PCHqS_example',
member_id => 'Zdd1Px7QWASdqDbnndiuwTAyyEstv82PCHlS_example',
result => status);
dbms_output.put_line(status);
END;
/
The parameters are:
-
id
: specifies the Table Hyperlink Group ID. This is theid
value shown in the result when you create a Table Hyperlink Group. See Create a Table Hyperlink Group for more information. member_id
: specifies an existing Table Hyperlink ID to add to the group. Themember_id
value cannot be a Table Hyperlink Group ID (is_group_url
must befalse
). See List Table Hyperlinks and Table Hyperlink Groups for more information.-
result
: provides JSON that indicates the outcome of the operation.
See ADD_MEMBER Procedure for more information.
Parent topic: Create and Manage Table Hyperlink Groups
Remove a Table Hyperlink Group Member
At any time a user with appropriate privileges can remove a member from a Table Hyperlink Group.
Use DBMS_DATA_ACCESS.REMOVE_MEMBER
to remove a member from a
Table Hyperlink Group. For example:
DECLARE
status CLOB;
BEGIN
DBMS_DATA_ACCESS.REMOVE_MEMBER
(
id => 'Vd1Px7QWASdqDbnndiuwTAyyEstv82PCHqS_example',
member_id => 'Zdd1Px7QWASdqDbnndiuwTAyyEstv82PCHlS_example',
result => status);
dbms_output.put_line(status);
END;
/
The parameters are:
-
id
: specifies the Table Hyperlink Group ID. This is theid
value shown in the result when you create a Table Hyperlink Group. See Create a Table Hyperlink Group for more information. -
member_id
: specifies the member ID to remove from the Table Hyperlink Group. -
result
: provides JSON that indicates the outcome of the operation.
Notes for removing a member:
- The
member_id
value cannot be a Table Hyperlink Group ID (is_group_url
must befalse
). See Notes for Listing Table Hyperlinks and Table Hyperlink Groups for more information. -
You can use
DBMS_DATA_ACCESS.LIST_MEMBERS
to list the members of a Table Hyperlink Group. See Notes for Listing Table Hyperlinks and Table Hyperlink Groups for more information. -
If the removed member is an existing Table Hyperlink which was added to the group using
DBMS_DATA_ACCESS.ADD_MEMBER
, the member is removed from the group but the Table Hyperlink could be accessed directly until it is explicitly invalidated or expires. -
If a Table Hyperlink Group contains only one member and that member is removed, the group is invalidated.
See REMOVE_MEMBER Procedure for more information.
Parent topic: Create and Manage Table Hyperlink Groups
Invalidate a Table Hyperlink Group
At any time a user with appropriate privileges can invalidate a Table Hyperlink Group.
Use DBMS_DATA_ACCESS.INVALIDATE_URL
to invalidate a Table Hyperlink
Group. For example:
DECLARE
status CLOB;
BEGIN
DBMS_DATA_ACCESS.INVALIDATE_URL
(
id => 'Vd1Px7QWASdqDbnndiuwTAyyEstv82PCHqS_example',
result => status);
dbms_output.put_line(status);
END;
/
The parameters are:
-
id
: specifies the Table Hyperlink Group ID. This is theid
value shown in the result when you create a Table Hyperlink Group. See Create a Table Hyperlink Group for more information. -
result
: provides JSON that indicates the outcome of the operation.
When the
DBMS_DATA_ACCESS.INVALIDATE_URL
id
parameter is a Table Hyperlink Group, the procedure invalidates the
group and all the group members, with the exception of any group members that were added
with DBMS_DATA_ACCESS.ADD_MEMBER
. After
you run DBMS_DATA_ACCESS.INVALIDATE_URL
, the members that were added with
DBMS_DATA_ACCESS.ADD_MEMBER
maintain
their independent Table Hyperlink invalidation values and you can invalidate these Table
Hyperlinks individually using DBMS_DATA_ACCESS.INVALIDATE_URL
.
See INVALIDATE_URL Procedure for more information.
Parent topic: Create and Manage Table Hyperlink Groups