Synthèse des sous-programmes DBMS_CLOUD_REPO
Cette section couvre les sous-programmes DBMS_CLOUD_REPO fournis avec Autonomous AI Database.
Le package DBMS_CLOUD_REPO se compose des éléments suivants :
- Opérations d'initialisation DBMS_CLOUD_REPO
- Opérations de gestion du référentiel DBMS_CLOUD_REPO
- Opérations de fichier DBMS_CLOUD_REPO
- Opérations d'installation SQL DBMS_CLOUD_REPO
Prérequis
En tant que développeur, vous pouvez utiliser les procédures DBMS_CLOUD avec des bases de données d'IA autonomes 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.
L'administrateur de parc doit avoir configuré une connectivité sortante à l'aide d'une passerelle NAT, comme décrit ci-dessous :
-
Créez une passerelle NAT dans le réseau cloud virtuel (VCN) où résident vos ressources de base de données Autonomous AI en suivant les instructions de la section 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) où résident les ressources de base de données Autonomous AI 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 correspondante.
-
Dans l'onglet Information sur le sous-réseau, cliquez sur le nom de la table de acheminement du sous‑réseau pour afficher la page Détails de la table de acheminement correspondante.
-
Dans la table des règles de acheminement 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 de routage possédant ces caractéristiques.
-
-
Revenez à la page Détails du sous-réseau du sous-réseau.
-
Dans la table Listes de sécurité du sous‑réseau, cliquez sur le nom de la liste des sécurité du sous-réseau pour afficher sa page Détails de la liste.
-
Dans le menu latéral, sous Ressources, cliquez sur Règles sortantes.
-
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 possédant ces caractéristiques.
-
-
Les paramètres de proxy HTTP de votre environnement doivent autoriser la base de données à accéder au fournisseur de service cloud.
Ces paramètres sont définis par l'administrateur de parc lors de la création de l'infrastructure Exadata Cloud@Customer, comme décrit dans Utilisation de la console pour provisionner Exadata Database Service on Cloud@Customer.
Remarque : 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 qu'il est activé, vous ne pouvez pas modifier ces paramètres.
La configuration d'un proxy HTTP pour une infrastructure Exadata déjà provisionnée nécessite une demande de service dans My Oracle Support. Pour plus d'informations, reportez-vous à Création d'une demande d'assistance dans My Oracle Support.
Procédure CREATE_BRANCH
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 |
Spécifie 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 nouvelle branche à l'aide de la validation de la tête de la branche parent indiquée. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous ne fournissez pas de valeur |
parent_commit_id |
Crée le nouveau 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
Remarque : pour créer un branchement dans un référentiel de code cloud, vous devez indiquer le branchement 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 |
Spécifie le descripteur de référentiel. Ce paramètre est pris en charge pour tous les fournisseurs cloud. |
description |
Description courte du référentiel. Ce paramètre est pris en charge pour GITHUB et le fournisseur cloud 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;
/
Procédure DELETE_BRANCH
Cette procédure supprime un branchement dans le 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 |
Supprimez 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 d'accès au fichier à supprimer dans le référentiel. |
branch_name |
Supprimez le fichier d'un branchement spécifique. |
commit_details |
Valider les détails en tant que document JSON
|
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 |
Spécifie 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 LDD 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 de 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 du fichier permettant de télécharger les 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 à Table DBMS_METADATA : Object Types dans le manuel Oracle Database 19c PL/SQL Packages and Types Reference ou Oracle Database 26ai PL/SQL Packages and Types Reference. |
object_name |
Nom de l'objet de base de données pour extraire les métadonnées. |
object_schema |
Schéma propriétaire de l'objet de base de données. |
branch_name |
Placez 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" } } |
append |
Ajoutez le script DDL de métadonnées au fichier existant. |
Remarque sur l'utilisation
Pour un contrôle personnalisé sur l'objet LDD, 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 des privilèges nécessaires pour 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 26ai 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;
/
Procédure EXPORT_SCHEMA
Cette procédure exporte les métadonnées de tous les objets d'un schéma vers la branche Cloud Code Repository 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 |
Indique 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 LDD doit être téléchargé vers la branche Cloud Code Repository. 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
|
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 |
Valider les détails 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 vous 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 d'accès au 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 |
Obtenir le fichier à partir d'une branche spécifique. |
tag_name |
Obtenir le fichier à partir d'une balise spécifique. |
commit_name |
Obtenir le 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 |
Spécifie la région AWS pour le 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 (PAT). |
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 identificateur 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. Email de l'utilisateur et jeton d'accès personnel (PAT). |
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. Cette fonction est une interface générique permettant d'accepter un document JSON. Elle évite d'avoir à modifier le code. Vous n'avez qu'à modifier un document JSON lorsque vous déplacez un référentiel de code 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 à partir des éléments suivants :
|
repo_name |
Indique le nom du référentiel. DBMS_CLOUD_REPO.PARAM_REPO_NAME |
owner |
Propriétaire du référentiel GitHub. Ce paramètre est uniquement applicable pour le fournisseur cloud GitHub. |
region |
Région de référentiel AWS. Ce paramètre s'applique uniquement au fournisseur cloud AWS. |
organization |
Organisation Azure. Ce paramètre est uniquement applicable au fournisseur cloud Azure. |
project |
Projet d'équipe Azure. Ce paramètre est uniquement applicable 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 les instructions SQL à partir d'un fichier du 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 d'accès au référentiel. |
branch_name |
Branchement pour installer le fichier à partir d'un branchement spécifique. |
tag_name |
Balise permettant d'installer un fichier à partir d'une balise spécifique. |
commit_name |
ID de validation pour installer le fichier à partir d'une validation spécifique. |
stop_on_error |
Arrêtez d'exécuter les instructions SQL lors de la première erreur. |
Remarques sur l'utilisation
-
Vous pouvez installer des instructions SQL contenant des instructions SQL imbriquées à 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 ROOT du référentiel. -
@@: inclut un fichier SQL avec un chemin relatif au fichier en cours.
-
-
Les scripts sont conçus comme des scripts d'installation de schéma et non comme des scripts SQL génériques :
-
Les scripts ne peuvent pas contenir de commandes propres au client SQL*Plus.
-
Les scripts ne peuvent pas contenir de variables attachées ou 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 PLSQL LDD et LMD, mais les instructions
SELECTdirectes ne sont pas prises en charge. L'utilisation de SELECT dans un bloc PL/SQL est prise en charge.
Toute instruction SQL qui peut être exécutée à l'aide de
EXECUTE IMMEDIATEfonctionnera si elle ne contient 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 les instructions SQL à partir d'un tampon donné en 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êtez d'exécuter les instructions SQL lors de la première erreur. |
Remarques sur l'utilisation
-
Les scripts sont conçus comme des scripts d'installation de schéma et non comme des scripts SQL génériques :
-
Les scripts ne peuvent pas contenir de commandes propres au client SQL*Plus.
-
Les scripts ne peuvent pas contenir de variables attachées ou 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 PLSQL LDD et LMD, mais les instructions
SELECTdirectes ne sont pas prises en charge. L'utilisation de SELECT dans un bloc PL/SQL est prise en charge.
Toute instruction SQL qui peut être exécutée à l'aide de
EXECUTE IMMEDIATEfonctionnera si elle ne contient 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 du branchement Cloud Code Repository identifiées 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 alignée avec le type de retour
list_branch_ret_tab. -
DBMS_CLOUD_REPO.LIST_BRANCHESrenvoie la colonnename, qui indique le nom de la branche Cloud Code Repository.
Fonction LIST_COMMITS
Cette fonction répertorie les validations dans la branche Cloud Code Repository 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épertorier les validations d'une branche spécifique. Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous ne fournissez pas de valeur |
file_path |
Répertoriez les fichiers sous le chemin de sous-dossier spécifié 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 Ce paramètre est pris en charge pour tous les fournisseurs cloud. Si vous n'indiquez pas de valeur |
Exemples
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS(repo => l_repo);
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS (
repo => l_repo,
commit_id => '66dd2b23b74cd0afabd11af66c6aa9c550540ba6',
file_path => 'sub_dir/test11.sql'
);
Remarques sur l'utilisation
-
Il s'agit d'une fonction de table alignée avec un type de retour
list_commit_ret_tab. -
DBMS_CLOUD_REPO.LIST_COMMITSrenvoie la colonne :commit_id.
Fonction LIST_FILES
Cette fonction télécharge un fichier à partir du référentiel de code cloud. Vous pouvez éventuellement accéder au contenu du 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 sur les 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épertoriez les fichiers sous le chemin de sous-dossier spécifié dans le référentiel. |
branch_name |
Répertoriez les fichiers d'une branche spécifique. |
tag_name |
Répertoriez les fichiers à partir d'une balise spécifique. |
commit_name |
Répertoriez les fichiers à partir d'une validation spécifique. |
Remarques sur l'utilisation
-
Fonction de table alignée avec le type de retour
list_file_ret_tab. -
DBMS_CLOUD_REPO.LIST_FILESrenvoie les colonnesid,name,urletbytes.
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 sur les 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 |
Description courte 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
-
Fonction de table alignée avec le type de retour
list_repo_ret_tab. -
DBMS_CLOUD_REPO.LIST_REPOSITORIESrenvoie les colonnesid,name,owner,description,private,url,bytes,createdetlast_modified.
Exemple
SELECT name description FROM DBMS_CLOUD_REPO.LIST_REPOSITORIES(:repo);
NAME DESCRIPTION
--------------------- ---------------
TestRepo1 My test repo
Procédure MERGE_BRANCH
Cette procédure fusionne un branchement de référentiel dans un autre branchement spécifié 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 |
Indique 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 vers lequel effectuer la fusion. Ce paramètre est obligatoire et pris en charge pour tous les fournisseurs cloud. |
commit_details |
Valider les détails en tant que document JSON
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 répertoire ou le téléchargement du contenu d'un objet BLOB vers le fichier 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 |
Spécifie le descripteur de référentiel. |
file_path |
Chemin d'accès au fichier de téléchargement dans le référentiel. |
contents |
BLOB contenant 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 |
Placez le fichier dans une branche spécifique. |
commit_details |
Valider les détails en tant que document JSON :
|
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, tel que 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 pour le référentiel. Ce paramètre est pris en charge pour tous les fournisseurs cloud. |
description |
Description courte 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;
/