Récapitulatif des sous-programmes DBMS_CLOUD_REPO
Cette section traite des sous-programmes DBMS_CLOUD_REPO
fournis avec Autonomous Database.
Le package DBMS_CLOUD_REPO
est composé des éléments suivants :
Rubriques connexes
Prérequis
En tant que développeur, vous pouvez utiliser des procédures DBMS_CLOUD avec des instances Autonomous Database déployées sur Oracle Public Cloud, Multicloud ou Exadata Cloud@Customer.
Selon le choix de déploiement, les prérequis suivants doivent être respectés pour utiliser les procédures DBMS_CLOUD avec les fournisseurs de services Amazon S3, Azure Blob Storage et Google Cloud Storage.
- Créez une passerelle NAT dans le réseau cloud virtuel (VCN) où résident vos ressources Autonomous Database en suivant les instructions fournies dans Création d'une passerelle NAT dans la documentation Oracle Cloud Infrastructure.
- Après avoir créé la passerelle NAT, ajoutez une règle de routage et une règle de sécurité sortante à chaque sous-réseau (dans le VCN) dans lesquelles résident les ressources Autonomous Database afin que ces ressources puissent utiliser la passerelle pour obtenir une clé publique à partir de votre instance Azure AD :
- Accédez à la page Détails du sous-réseau.
- Dans l'onglet Informations sur le sous-réseau, cliquez sur le nom de la table de routage du sous-réseau pour afficher la page Détails de la table de routage correspondante.
- Dans la table des règles de routage existantes, vérifiez s'il existe déjà une règle avec les caractéristiques suivantes :
- Destination : 0.0.0.0/0
- Type de cible : passerelle NAT
- Cible : nom de la passerelle NAT que vous venez de créer dans le VCN
Si une telle règle n'existe pas, cliquez sur Ajouter des règles de routage et ajoutez une règle possédant ces caractéristiques.
- Revenez à la page Détails du sous-réseau.
- Dans la table Listes de sécurité du sous-réseau, cliquez sur le nom de la liste de sécurité du sous-réseau pour afficher la page Détails de la liste de sécurité correspondante.
- Dans le menu latéral, sous Resources, cliquez sur Egress Rules.
- Dans la table des règles sortantes existantes, vérifiez s'il existe déjà une règle avec les caractéristiques suivantes :
- Type de destination : CIDR
- Destination : 0.0.0.0/0
- Protocole IP : TCP
- Plage de ports source: 443
- Plage de ports de destination : Tout
Si une telle règle n'existe pas, cliquez sur Ajouter des règles sortantes et ajoutez une règle présentant ces caractéristiques.
Les paramètres de proxy HTTP de votre environnement doivent permettre à la base de données d'accéder au fournisseur de services cloud.
Remarques :
La configuration réseau, y compris le proxy HTTP, ne peut être modifiée que jusqu'à ce que l'infrastructure Exadata présente l'état Activation requise. Une fois activé, vous ne pouvez plus modifier ces paramètres.La configuration d'un proxy HTTP pour une infrastructure Exadata déjà provisionnée nécessite une demande de service (SR) dans My Oracle Support. Pour plus d'informations, reportez-vous à Création d'une demande d'assistance dans My Oracle Support.
CREATE_BRANCH Procédure
Cette procédure crée une branche dans le référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.CREATE_BRANCH
(
repo IN CLOB,
branch_name IN VARCHAR2,
parent_branch_name IN VARCHAR2 DEFAULT NULL,
parent_commit_id IN VARCHAR2 DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
branch_name |
Indique le nom du branchement du référentiel. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
parent_branch_name |
Crée la branche à l'aide de la validation de tête de la branche parent indiquée. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
parent_commit_id |
Crée le branchement à l'aide de la validation de référentiel indiquée. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
Exemple
Remarques :
Pour créer une branche dans un référentiel de code cloud, vous devez indiquer la branche parent ou l'ID de validation parent.BEGIN
DBMS_CLOUD_REPO.CREATE_BRANCH
(
repo => l_repo,
branch_name => 'test_branch',
parent_branch_name => 'main'
);
END;
/
Remarque sur l'utilisation
Pour exécuter la procédure DBMS_CLOUD_REPO.CREATE_BRANCH
, vous devez être connecté en tant qu'utilisateur ADMIN ou disposer du privilège EXECUTE
sur DBMS_CLOUD_REPO
.
Procédure CREATE_REPOSITORY
Cette procédure crée un référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.CREATE_REPOSITORY
(
repo IN CLOB,
description IN CLOB DEFAULT NULL,
private IN BOOLEAN DEFAULT TRUE
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est pris en charge pour tous les fournisseurs cloud. |
description |
Texte court de description du référentiel.
Ce paramètre est pris en charge pour les fournisseurs cloud GitHub et AWS. |
private |
Le référentiel est privé et accessible uniquement avec des informations d'identification valides. Ce paramètre est uniquement pris en charge pour le fournisseur cloud GitHub. |
Exemple
BEGIN
DBMS_CLOUD_REPO.CREATE_REPOSITORY
(
repo => l_repo,
description => 'My test repo',
private => TRUE
);
END;
/
DELETE_BRANCH Procédure
Cette procédure supprime une branche du référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.DELETE_BRANCH
(
repo IN CLOB,
branch_name IN VARCHAR2 DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
branch_name |
Permet de supprimer le branchement d'un référentiel spécifique.
Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
Exemple
BEGIN
DBMS_CLOUD_REPO.DELETE_BRANCH
(
repo => l_repo,
branch_name => 'test_branch'
);
END;
/
Remarque sur l'utilisation
Pour exécuter la procédure DBMS_CLOUD_REPO.DELETE_BRANCH
, vous devez être connecté en tant qu'utilisateur ADMIN ou disposer du privilège EXECUTE
sur DBMS_CLOUD_REPO
.
Procédure DELETE_FILE
Cette procédure supprime un fichier du référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.DELETE_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
file_path |
Chemin du fichier pour la suppression du fichier dans le référentiel. |
branch_name |
Permet de supprimer le fichier d'un branchement spécifique. |
commit_details |
Détails de validation en tant que document JSON : {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } |
Exemple
BEGIN
DBMS_CLOUD_REPO.DELETE_FILE
(
repo => l_repo,
file_path => 'scripts/test3.sql',
branch_name => 'test_branch'
);
END;
/
Procédure DELETE_REPOSITORY
Cette procédure supprime le référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.DELETE_REPOSITORY
(
repo IN CLOB
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
Exemple
BEGIN
DBMS_CLOUD_REPO.DELETE_REPOSITORY
(
repo => l_repo
);
END;
/
Procédure EXPORT_OBJECT
Cette procédure télécharge les métadonnées DDL d'un objet de base de données vers le référentiel de code cloud identifié par l'argument de descripteur repo
. Cette procédure permet de télécharger facilement la définition des métadonnées d'un objet de base de données en une seule étape.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.EXPORT_OBJECT
(
repo IN CLOB,
file_path IN VARCHAR2,
object_type IN VARCHAR2,
object_name IN VARCHAR2 DEFAULT NULL,
object_schema IN VARCHAR2 DEFAULT NULL,
branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL,
append IN BOOLEAN DEFAULT FALSE
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
file_path |
Chemin de fichier pour le téléchargement des métadonnées d'objet dans le référentiel. |
object_type |
Type d'objet pris en charge par DBMS_METADATA. Pour plus d'informations, reportez-vous à DBMS_METADATA : table Types d'objet dans Référence des types et des packages PL/SQL Oracle Database 19c ou Référence des types et des packages PL/SQL Oracle Database 23ai. |
object_name |
Nom de l'objet de base de données duquel extraire les métadonnées. |
object_schema |
Schéma propriétaire de l'objet de base de données. |
branch_name |
Permet de placer le fichier dans une branche spécifique. |
commit_details |
Détails de validation en tant que document JSON : |
append |
Permet d'ajouter les métadonnées DDL à la fin du fichier existant. |
Remarque sur l'utilisation
Pour un contrôle personnalisé sur le DDL d'objet, vous pouvez utiliser DBMS_METADATA.GET_DDL
avec DBMS_CLOUD_REPO.PUT_FILE
. Pour obtenir la définition des métadonnées de l'objet, l'utilisateur en cours doit disposer de privilèges lui permettant d'extraire les métadonnées de l'objet. Pour connaître les exigences de sécurité du package, reportez-vous à DBMS_METADATA dans le manuel Oracle Database 19c PL/SQL Packages and Types Reference ou Oracle Database 23ai PL/SQL Packages and Types Reference.
Exemple
BEGIN
DBMS_CLOUD_REPO.EXPORT_OBJECT
(
repo => l_repo,
object_type => 'PACKAGE',
object_name => 'MYPACK',
file_path => 'mypack.sql'
);
END;
/
EXPORT_SCHEMA Procédure
Cette procédure exporte les métadonnées de tous les objets d'un schéma vers la branche de référentiel de code cloud identifiée par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.EXPORT_SCHEMA
(
repo IN CLOB,
file_path IN VARCHAR2,
schema_name IN VARCHAR2,
filter_list IN CLOB DEFAULT NULL,
branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
file_path |
Spécifie le nom du fichier de schéma à télécharger vers le référentiel. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
schema_name |
Indique le nom du schéma pour lequel un script DDL doit être téléchargé vers le branchement du référentiel de code cloud. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
filter_list |
Spécifie le CLOB du tableau JSON qui définit les conditions de filtre pour inclure ou exclure les objets dont les métadonnées doivent être exportées. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Les paramètres JSON pour
filter_list sont les suivants :
|
branch_name |
Indique le nom du branchement du référentiel. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
commit_details |
Détails de validation en tant que document JSON : {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
Exemple
BEGIN
DBMS_CLOUD_REPO.EXPORT_SCHEMA
(
repo => l_repo,
schema_name => 'USER1',
file_path => 'myschema_ddl.sql'
filter_list =>
to_clob('[
{ "match_type":"equal",
"type":"table"
},
{ "match_type":"not_equal",
"type":"view"
},
{ "match_type":"in",
"type":"table",
"name": " ''EMPLOYEE_SALARY'',''EMPLOYEE_ADDRESS'' "
},
{ "match_type":"equal",
"type":"sequence",
"name": "EMPLOYEE_RECORD_SEQ"
},
{ "match_type":"like",
"type":"table",
"name": "%OFFICE%"
}
]'
);
);
END;
/
Remarque sur l'utilisation
Pour exécuter la procédure DBMS_CLOUD_REPO.EXPORT_SCHEMA
, vous devez être connecté en tant qu'utilisateur ADMIN ou disposer du privilège EXECUTE
sur DBMS_CLOUD_REPO
.
Procédure et fonction GET_FILE
La fonction télécharge le contenu d'un fichier à partir du référentiel de code cloud. La procédure permet de télécharger le contenu d'un fichier à partir du référentiel de code cloud et d'enregistrer le fichier dans un répertoire.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.GET_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
branch_name IN VARCHAR2 DEFAULT NULL,
tag_name IN VARCHAR2 DEFAULT NULL,
commit_name IN VARCHAR2 DEFAULT NULL
) RETURN CLOB;
PROCEDURE DBMS_CLOUD_REPO.GET_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
directory_name IN VARCHAR2,
target_file_name IN VARCHAR2 DEFAULT NULL,
branch_name IN VARCHAR2 DEFAULT NULL,
tag_name IN VARCHAR2 DEFAULT NULL,
commit_name IN VARCHAR2 DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
file_path |
Chemin du fichier dans le référentiel. |
directory_name |
Nom de l'objet de répertoire pour enregistrer le contenu du fichier. |
target_file_name |
Nom du fichier cible pour enregistrer le contenu dans le répertoire. |
branch_name |
Permet d'obtenir un fichier à partir d'un branchement spécifique. |
tag_name |
Permet d'obtenir un fichier à partir d'une balise spécifique. |
commit_name |
Permet d'obtenir un fichier à partir d'une validation spécifique. |
Exemple
BEGIN
DBMS_CLOUD_REPO.GET_FILE
(
repo => l_repo,
file_path => 'test3.sql',
directory_name => 'DATA_PUMP_DIR',
target_file_name => 'test2.sql'
);
END;
/
Fonction INIT_AWS_REPO
Cette fonction initialise un descripteur de référentiel AWS et renvoie un type opaque.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.INIT_AWS_REPO
(
credential_name IN VARCHAR2,
repo_name IN VARCHAR2,
region IN VARCHAR2
) RETURN repo;
Paramètres
Paramètre | Description |
---|---|
credential_name |
Objet d'informations d'identification indiquant la clé d'accès/clé secrète AWS CodeCommit. |
repo_name |
Indique le nom du référentiel. |
region |
Indique la région AWS du référentiel CodeCommit. |
Exemple
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_AWS_REPO
(
credential_name => 'AWS_CRED',
repo_name => 'my_repo',
region => 'us-east-1'
);
END;
/
Fonction INIT_AZURE_REPO
Cette fonction initialise un descripteur de référentiel Azure et renvoie un type opaque. Cette fonction est uniquement prise en charge pour le fournisseur cloud Azure.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.INIT_AZURE_REPO
(
credential_name IN VARCHAR2,
repo_name IN VARCHAR2,
organization IN VARCHAR2,
project IN VARCHAR2
) RETURN repo;
Paramètres
Paramètre | Description |
---|---|
credential_name |
Objet d'informations d'identification indiquant Azure, avec un nom utilisateur et un jeton d'accès personnel. |
repo_name |
Indique le nom du référentiel. |
organization |
Indique l'organisation Azure DevOps. |
project |
Nom du projet d'équipe Azure. |
Exemple
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_AZURE_REPO
(
credential_name => 'AZURE_CRED',
repo_name => 'my_repo',
organization => 'myorg',
project => 'myproj',
);
END;
/
Fonction INIT_GITHUB_REPO
Cette fonction initialise un descripteur de référentiel GitHub et renvoie un type opaque.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.INIT_GITHUB_REPO
(
credential_name IN VARCHAR2 DEFAULT NULL,
repo_name IN VARCHAR2,
owner IN VARCHAR2)
RETURN repo;
Paramètres
Paramètre | Description |
---|---|
credential_name |
Objet d'informations d'identification indiquant GitHub. Courriel de l'utilisateur et jeton d'accès personnel. |
repo_name |
Indique le nom du référentiel. |
owner |
Indique le propriétaire du référentiel. |
Exemple
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_GITHUB_REPO
(
credential_name => 'GITHUB_CRED',
repo_name => 'my_repo',
owner => 'foo'
);
END;
/
Fonction INIT_REPO
Cette fonction initialise un descripteur de référentiel de code cloud et renvoie un objet JSON opaque. Il s'agit d'une interface générique permettant d'accepter un document JSON. Elle permet d'éviter d'avoir à modifier le code : il vous suffit de modifier un document JSON lors du déplacement d'un référentiel de code à partir d'un référentiel de code cloud vers un autre référentiel de code cloud.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.INIT_REPO
(
params IN CLOB)
RETURN CLOB;
Paramètres
Paramètre JSON | Description |
---|---|
provider |
Fournisseur de référentiel de code cloud parmi les suivants : DBMS_CLOUD_REPO.GITHUB_REPO ('GITHUB') DBMS_CLOUD_REPO.AWS_REPO ('AWS') DBMS_CLOUD_REPO.AZURE_REPO ('AZURE') |
repo_name |
Indique le nom du référentiel. DBMS_CLOUD_REPO.PARAM_REPO_NAME |
owner |
Propriétaire de référentiel GitHub : DBMS_CLOUD_REPO.PARAM_OWNER Ce paramètre s'applique uniquement au fournisseur cloud GitHub. |
region |
Région de référentiel AWS : DBMS_CLOUD_REPO_PARAM_REGION Ce paramètre s'applique uniquement au fournisseur cloud AWS. |
organization |
Organisation Azure : DBMS_CLOUD_REPO_PARAM_ORGANIZATION Ce paramètre s'applique uniquement au fournisseur cloud Azure. |
project |
Projet d'équipe Azure : DBMS_CLOUD_REPO_PARAM_PROJECT Ce paramètre s'applique uniquement au fournisseur cloud Azure. |
Exemple
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_REPO
(
params => JSON_OBJECT('credential_name' value 'mycred',
'repo_name' value 'myrepo',
'repo_owner' value 'foo')
);
END;
/
Procédure INSTALL_FILE
Cette procédure installe des instructions SQL à partir d'un fichier dans le référentiel de code cloud identifié par l'argument de descripteur repo
.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.INSTALL_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
branch_name IN VARCHAR2 DEFAULT NULL,
tag_name IN VARCHAR2 DEFAULT NULL,
commit_name IN VARCHAR2 DEFAULT NULL,
stop_on_error IN BOOLEAN DEFAULT TRUE
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
file_path |
Chemin du fichier dans le référentiel. |
branch_name |
Branchement pour installer un fichier à partir d'un branchement spécifique. |
tag_name |
Balise pour installer un fichier à partir d'une balise spécifique. |
commit_name |
ID de validation pour installer un fichier à partir d'une validation spécifique. |
stop_on_error |
Arrête l'exécution des instructions SQL à la première erreur. |
Remarques sur l'utilisation
-
Vous pouvez installer des instructions SQL contenant du code SQL imbriqué à partir d'un fichier de référentiel de code cloud à l'aide des éléments suivants :
-
@
: inclut un fichier SQL avec un chemin relatif vers le chemin d'accès ROOT du référentiel. -
@@
: inclut un fichier SQL avec un chemin relatif au fichier en cours.
-
-
Les scripts sont conçus en tant que scripts d'installation de schéma et non en tant que scripts SQL génériques :
- Les scripts ne peuvent pas contenir de commandes propres au client SQL*Plus.
- Ils ne peuvent pas contenir de variables attachées ni de scripts paramétrés.
- Les instructions SQL doivent se terminer par une barre oblique sur une nouvelle ligne (/).
- Les scripts peuvent contenir des instructions DDL, DML et PL/SQL, mais les instructions
SELECT
directes ne sont pas prises en charge. L'utilisation de l'instruction SELECT dans un bloc PL/SQL est prise en charge.
Les instructions SQL pouvant être exécutées à l'aide de la commande
EXECUTE IMMEDIATE
fonctionnent si elles ne contiennent pas de variables attachées ou de définitions.
Exemple
BEGIN
DBMS_CLOUD_REPO.INSTALL_FILE
(
repo => l_repo,
file_path => 'test3.sql',
stop_on_error => FALSE
);
END;
/
Procédure INSTALL_SQL
Cette procédure installe des instructions SQL à partir d'un tampon fourni en tant qu'entrée.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.INSTALL_SQL
(
content IN CLOB,
stop_on_error IN BOOLEAN DEFAULT TRUE
);
Paramètres
Paramètre | Descriptions |
---|---|
content |
Objet CLOB contenant les instructions SQL à exécuter. |
stop_on_error |
Arrête l'exécution des instructions SQL à la première erreur. |
Remarques sur l'utilisation
-
Les scripts sont conçus en tant que scripts d'installation de schéma et non en tant que scripts SQL génériques :
- Les scripts ne peuvent pas contenir de commandes propres au client SQL*Plus.
- Ils ne peuvent pas contenir de variables attachées ni de scripts paramétrés.
- Les instructions SQL doivent se terminer par une barre oblique sur une nouvelle ligne (/).
- Les scripts peuvent contenir des instructions DDL, DML et PL/SQL, mais les instructions
SELECT
directes ne sont pas prises en charge. L'utilisation de l'instruction SELECT dans un bloc PL/SQL est prise en charge.
Les instructions SQL pouvant être exécutées à l'aide de la commande
EXECUTE IMMEDIATE
fonctionnent si elles ne contiennent pas de variables attachées ou de définitions.
Exemple
BEGIN
DBMS_CLOUD_REPO.INSTALL_SQL
(
content => 'create table t1 (x varchar2(30))' || CHR(10) || '/',
stop_on_error => FALSE
);
END;
/
Fonction LIST_BRANCHES
Cette fonction répertorie les branches dans la branche du référentiel de code cloud identifiée par l'argument de descripteur repo
.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.LIST_BRANCHES
(
repo IN CLOB
) RETURN list_branch_ret_tab PIPELINED PARALLEL_ENABLE;
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
Exemple
SELECT * FROM DBMS_CLOUD_REPO.LIST_BRANCHES
(repo => l_repo);
Remarques sur l'utilisation
-
Fonction de table pipeline dont le type de valeur renvoyée est
list_branch_ret_tab.
-
DBMS_CLOUD_REPO.LIST_BRANCHES
renvoie la colonne :name
, qui indique le nom de la branche du référentiel de code cloud.
Fonction LIST_COMMITS
Cette fonction répertorie les validations dans la branche de référentiel de code cloud identifiée par l'argument de descripteur repo
.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.LIST_COMMITS
(
repo IN CLOB,
branch_name IN VARCHAR2 DEFAULT NULL,
file_path IN VARCHAR2 DEFAULT NULL,
commit_id IN VARCHAR2 DEFAULT NULL
) RETURN list_commit_ret_tab PIPELINED PARALLEL_ENABLE;
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
branch_name |
Répertorie les validations à partir d'un branchement spécifique.
Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
file_path |
Répertorie les fichiers sous le chemin du sous-dossier indiqué dans le référentiel.
Ce paramètre est uniquement pris en charge pour les fournisseurs cloud Git et Azure. Si vous n'indiquez pas de valeur |
commit_id |
Répertorier les fichiers à partir du fichier sha/id indiquéCe paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
Exemple
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS
(repo => l_repo);
Exemple
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS
(
repo => l_repo,
commit_id => '66dd2b23b74cd0afabd11af66c6aa9c550540ba6',
file_path => 'sub_dir/test11.sql'
);
Remarques sur l'utilisation
-
Fonction de table pipeline dont le type de valeur renvoyée est
list_commit_ret_tab.
-
DBMS_CLOUD_REPO.LIST_COMMITS
renvoie la colonne :commit_id
.
Fonction LIST_FILES
Cette fonction télécharge un fichier à partir du référentiel de code cloud. Vous pouvez également accéder au contenu d'un fichier à partir d'un branchement, d'une balise ou d'un nom de validation spécifique. Par défaut, le fichier est accessible à partir du branchement de référentiel par défaut. Les résultats incluent les noms de fichier et les métadonnées supplémentaires relatives aux fichiers.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.LIST_FILES
(
repo IN CLOB,
path IN VARCHAR2 DEFAULT NULL,
branch_name IN VARCHAR2 DEFAULT NULL,
tag_name IN VARCHAR2 DEFAULT NULL,
commit_id IN VARCHAR2 DEFAULT NULL
) RETURN list_file_ret_tab PIPELINED PARALLEL_ENABLE;
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
path |
Répertorie les fichiers sous le chemin du sous-dossier indiqué dans le référentiel. |
branch_name |
Répertorie les fichiers à partir d'un branchement spécifique. |
tag_name |
Répertorie les fichiers à partir d'une balise spécifique. |
commit_name |
Répertorie les fichiers à partir d'une validation spécifique. |
Remarques sur l'utilisation
-
Il s'agit d'une fonction de table pipeline dont le type de valeur renvoyée est
list_file_ret_tab
. -
DBMS_CLOUD_REPO.LIST_FILES
renvoie les colonnesid
,name
,url
etbytes
.
Exemple
SELECT name FROM DBMS_CLOUD_REPO.LIST_FILES
(repo => l_repo);
NAME
-------------------------
test3.sql
Fonction LIST_REPOSITORIES
Cette fonction répertorie tous les référentiels de code cloud identifiés par l'argument de descripteur repo
. Les résultats incluent les noms de référentiel et les métadonnées supplémentaires relatives aux référentiels.
Syntaxe
FUNCTION DBMS_CLOUD_REPO.LIST_REPOSITORIES
(
repo IN CLOB
) RETURN list_repo_ret_tab PIPELINED PARALLEL_ENABLE;
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est pris en charge par tous les fournisseurs cloud. |
description |
Texte court de description du référentiel.
Ce paramètre est pris en charge par les fournisseurs cloud GITHUB et AWS. |
private |
Le référentiel est privé et accessible uniquement avec des informations d'identification valides. Ce paramètre est pris en charge pour le fournisseur cloud GITHUB. |
Remarques sur l'utilisation
-
Il s'agit d'une fonction de table pipeline dont le type de valeur renvoyée est
list_repo_ret_tab
. -
DBMS_CLOUD_REPO.LIST_REPOSITORIES
renvoie les colonnesid
,name
,owner
,description
,private
,url
,bytes
,created
etlast_modified
.
Exemple
SELECT name description FROM DBMS_CLOUD_REPO.LIST_REPOSITORIES
(:repo);
NAME DESCRIPTION
--------------------- ---------------
TestRepo1 My test repo
MERGE_BRANCH Procédure
Cette procédure fusionne une branche de référentiel dans une autre branche spécifiée dans le référentiel de code cloud identifié par l'argument de descripteur repo
. La procédure MERGE_BRANCH
n'est actuellement pas prise en charge dans Azure.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.MERGE_BRANCH
(
repo IN CLOB,
branch_name IN VARCHAR2,
parent_branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. Ce paramètre est obligatoire et pris en charge pour les fournisseurs cloud GITHUB et AWS. |
branch_name |
Spécifie le nom de branchement Git à fusionner. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
target_branch_name |
Indique le nom du branchement cible dans lequel effectuer la fusion. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
commit_details |
Détails de validation en tant que document JSON : {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } Si vous n'indiquez pas de valeur |
Exemple
BEGIN
DBMS_CLOUD_REPO.MERGE_BRANCH
(
repo => l_repo,
branch_name => 'test_branch',
target_branch_name => 'main'
);
END;
/
Remarque sur l'utilisation
Pour exécuter la procédure DBMS_CLOUD_REPO.MERGE_BRANCH
, vous devez être connecté en tant qu'utilisateur ADMIN ou disposer du privilège EXECUTE
sur DBMS_CLOUD_REPO
.
Procédure PUT_FILE
Cette procédure télécharge un fichier vers le référentiel de code cloud identifié par l'argument de descripteur repo
. La procédure est surchargée pour prendre en charge le téléchargement d'un fichier à partir d'un objet de répertoire ou le téléchargement du contenu d'un objet BLOB vers le fichier de référentiel.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.PUT_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
contents IN BLOB,
branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL
);
PROCEDURE DBMS_CLOUD_REPO.PUT_FILE
(
repo IN CLOB,
file_path IN VARCHAR2,
directory_name IN VARCHAR2,
source_file_name IN VARCHAR2 DEFAULT NULL,
branch_name IN VARCHAR2 DEFAULT NULL,
commit_details IN CLOB DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel. |
file_path |
Chemin de fichier pour le téléchargement d'un fichier dans le référentiel. |
contents |
Objet BLOB avec le contenu du fichier. |
directory_name |
Nom de l'objet de répertoire contenant le nom du fichier. |
source_file_name |
Nom du fichier source à télécharger vers le référentiel. |
branch_name |
Permet de placer le fichier dans une branche spécifique. |
commit_details |
Détails de validation en tant que document JSON : {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } |
Exemple
BEGIN
DBMS_CLOUD_REPO.PUT_FILE
(
repo => l_repo,
);
END;
/
Procédure UPDATE_REPOSITORY
Cette procédure met à jour un référentiel de code cloud identifié par l'argument de descripteur repo
. UPDATE_REPOSITORY prend en charge la mise à jour du nom, de la description ou du statut de visibilité privée, comme pris en charge par le référentiel de code cloud.
Syntaxe
PROCEDURE DBMS_CLOUD_REPO.UPDATE_REPOSITORY
(
repo IN OUT CLOB,
new_name IN VARCHAR2 DEFAULT NULL,
description IN CLOB DEFAULT NULL,
private IN BOOLEAN DEFAULT NULL
);
Paramètres
Paramètre | Description |
---|---|
repo |
Indique le descripteur de référentiel.
Ce paramètre est pris en charge pour tous les fournisseurs cloud. |
new_name |
Nouveau nom du référentiel.
Ce paramètre est pris en charge pour tous les fournisseurs cloud. |
description |
Texte court de description du référentiel.
Ce paramètre est pris en charge pour les fournisseurs cloud GitHub et AWS. |
private |
Le référentiel est privé et accessible uniquement avec des informations d'identification valides. Ce paramètre est pris en charge pour le fournisseur cloud GITHUB. |
Exemple
BEGIN
DBMS_CLOUD_REPO.UPDATE_REPOSITORY
(
repo => l_repo,
new_name => 'repo2'
);
END;
/