Pacchetto DBMS_CLOUD_REPO
Il pacchetto DBMS_CLOUD_REPO prevede l'uso e la gestione dei repository di codice in hosting nel cloud da Oracle Database. I repository di codice cloud supportati includono GitHub, AWS CodeCommit e Azure Repos.
- DBMS_CLOUD_REPO Panoramica
Il pacchettoDBMS_CLOUD_REPOoffre un facile accesso ai file nei repository di codici cloud (Git), tra cui: GitHub, AWS CodeCommit e Azure Repos. - DBMS_CLOUD_REPO Strutture dati
Il packageDBMS_CLOUD_REPOdefinisce i tipi di record e un tipo di oggetto JSON genericorepo. - DBMS_CLOUD_REPO Gruppi di sottoprogrammi
I sottoprogrammi del pacchettoDBMS_CLOUD_REPOpossono essere raggruppati in quattro categorie: Operazioni di inizializzazione, Operazioni di gestione del repository, Operazioni dei file e Operazioni di installazione SQL. - Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
In questa sezione vengono descritti i sottoprogrammiDBMS_CLOUD_REPOforniti con Autonomous AI Database.
Argomento padre: Riferimento del pacchetto fornito dal database AI autonomo
Panoramica di DBMS_CLOUD_REPO
Il pacchetto DBMS_CLOUD_REPO offre un facile accesso ai file nei repository di codice cloud (Git), tra cui: GitHub, AWS CodeCommit e Azure Repos.
Questo pacchetto è un'unica interfaccia per l'accesso ai repository di codici multicloud e consente di caricare file SQL nei repository Git o installare script SQL direttamente dai repository di codici cloud. Questo pacchetto consente inoltre di utilizzare un Cloud Code Repository per gestire le versioni di codice per gli script SQL e per installare o applicare patch al codice dell'applicazione dai repository Git.
Concetti
-
Git Version Control System: Git è un software per tenere traccia delle modifiche in qualsiasi set di file, di solito utilizzato per coordinare il lavoro tra i programmatori durante lo sviluppo collaborativo del codice sorgente durante lo sviluppo del software. I suoi obiettivi includono velocità, integrità dei dati e supporto per flussi di lavoro distribuiti e non lineari.
-
Git Repository: Un repository Git è uno storage virtuale del tuo progetto. Ti consente di salvare le versioni del tuo codice, a cui puoi accedere quando necessario.
Architettura
DBMS_CLOUD_REPO offre quattro aree di funzioni:
-
Inizializzazione del repository con gestione generica del repository di codici cloud
-
Inizializzare un repository di codici GitHub
-
Inizializzare un repository di codici CodeCommit AWS
-
Inizializza un repository di codici repository di repository di Azure
-
-
Operazioni di gestione repository
-
Crea un archivio
-
Aggiorna un repository
-
Elenca repository
-
Elimina un repository
-
-
Operazioni di gestione file repository
-
Caricare un file nel repository di codici da Oracle Database.
-
Scaricare un file dal repository di codici a Oracle Database.
-
Elimina i file dal repository di codici.
-
Elenca i file dal repository di codici.
-
-
Operazioni di installazione SQL
- Esporta DDL metadati oggetto database nel repository.
-
Installare le istruzioni SQL da un file nel repository di codici in Oracle Database.
-
Installare le istruzioni SQL da un buffer.
Argomento padre: Pacchetto DBMS_CLOUD_REPO
DBMS_CLOUD_REPO Strutture dati
Il package DBMS_CLOUD_REPO definisce i tipi di record e un tipo di oggetto JSON generico repo.
Oggetto JSON REPO
Un oggetto DBMS_CLOUD_REPO REPO è un oggetto JSON opaco che rappresenta un repository di codici cloud di un provider cloud specifico. Un oggetto REPO può essere passato a diverse API DBMS_CLOUD_REPO. Questo oggetto opaco garantisce che le procedure e le funzioni DBMS_CLOUD_REPO siano compatibili con il multicloud; non è necessario modificare alcun codice quando si esegue la migrazione da un provider del repository di codici cloud a un altro repository di codici cloud.
Argomento padre: Pacchetto DBMS_CLOUD_REPO
DBMS_CLOUD_REPO Gruppi di sottoprogrammi
I sottoprogrammi del pacchetto DBMS_CLOUD_REPO possono essere raggruppati in quattro categorie: Operazioni di inizializzazione, Operazioni di gestione del repository, Operazioni dei file e Operazioni di installazione SQL.
- DBMS_CLOUD_REPO Initialization Operations
Elenco dei sottoprogrammi per le operazioni di inizializzazione all'interno del pacchettoDBMS_CLOUD_REPO. - DBMS_CLOUD_REPO Repository Management Operations
Mostra i sottoprogrammi per le operazioni di gestione del repository nel pacchettoDBMS_CLOUD_REPO. - DBMS_CLOUD_REPO Repository Branch Management Operations
Elenca i sottoprogrammi per le operazioni di gestione delle diramazioni del repository nel pacchettoDBMS_CLOUD_REPO. - DBMS_CLOUD_REPO File Operations
Elenca i sottoprogrammi per le operazioni sui file all'interno del pacchettoDBMS_CLOUD_REPO. - DBMS_CLOUD_REPO Operazioni di installazione SQL
Elenca i sottoprogrammi per le operazioni di installazione SQL nel pacchettoDBMS_CLOUD_REPO.
Argomento padre: Pacchetto DBMS_CLOUD_REPO
DBMS_CLOUD_REPO Operazioni di inizializzazione
Elenca i sottoprogrammi delle operazioni di inizializzazione all'interno del pacchetto DBMS_CLOUD_REPO.
| Sottoprogramma | Descrizione |
|---|---|
| Questa funzione inizializza un handle di repository AWS e restituisce un tipo opaco. | |
| Questa funzione inizializza un handle di repository Azure e restituisce un tipo opaco. | |
| Questa funzione inizializza un handle del repository GitHub e restituisce un tipo opaco. | |
| Questa funzione inizializza un handle di Cloud Code Repository e restituisce un oggetto JSON opaco. |
Argomento padre: DBMS_CLOUD_REPO Gruppi di sottoprogrammi
DBMS_CLOUD_REPO Operazioni di gestione del repository
Mostra i programmi secondari per le operazioni di gestione del repository all'interno del pacchetto DBMS_CLOUD_REPO.
| Sottoprogramma | Descrizione |
|---|---|
Questa procedura crea un repository di codici cloud identificato dall'argomento handle repo.
|
|
Questa procedura elimina il repository di codici cloud identificato dall'argomento handle repo.
|
|
Questa funzione elenca tutti i repository di codici cloud identificati dall'argomento handle repo.
|
|
Questa procedura aggiorna un repository di codici cloud identificato dall'argomento handle repo. La procedura supporta l'aggiornamento del nome, della descrizione o dello stato di visibilità privata, come supportato dal repository di codici cloud.
|
Argomento padre: DBMS_CLOUD_REPO Gruppi di sottoprogrammi
DBMS_CLOUD_REPO Operazioni di gestione delle filiali del repository
Elenca i sottoprogrammi per le operazioni di gestione della diramazione del repository all'interno del pacchetto DBMS_CLOUD_REPO.
| Sottoprogramma | Descrizione |
|---|---|
Questa procedura crea una diramazione in un repository di codici cloud identificato dall'argomento handle repo.
|
|
Questa procedura elimina una diramazione in un repository di codici cloud identificato dall'argomento handle repo.
|
|
Questa funzione elenca tutte le diramazioni del repository di codici cloud identificate dall'argomento handle repo.
|
|
Questa funzione elenca tutti i commit in una diramazione del repository di codici cloud identificata dall'argomento handle repo.
|
|
Questa procedura unisce una diramazione Cloud Code Repository a un'altra diramazione specificata in un repository di codici cloud identificato dall'argomento di gestione repo.
|
Argomento padre: DBMS_CLOUD_REPO Gruppi di sottoprogrammi
Operazioni sui file DBMS_CLOUD_REPO
Elenca i sottoprogrammi per le operazioni sui file all'interno del pacchetto DBMS_CLOUD_REPO.
| Sottoprogramma | Descrizione |
|---|---|
Questa procedura elimina un file dal repository di codici cloud identificato dall'argomento handle repo.
|
|
| La funzione scarica il contenuto di un file dal repository del codice cloud. La procedura consente di scaricare il contenuto di un file dal repository Cloud Code e salvare il file in una directory. | |
| Questa funzione scarica un file dal repository di codici cloud. Facoltativamente, è possibile accedere al contenuto del file da una diramazione, un tag o un nome commit specifici. Per impostazione predefinita, è possibile accedere al file dalla diramazione predefinita del repository. | |
Questa procedura carica un file nel repository di codici cloud identificato dall'argomento handle repo. La procedura viene sovraccaricata per supportare il caricamento di un file da un oggetto directory o il caricamento del contenuto da un CLOB nel file di repository.
|
Argomento padre: DBMS_CLOUD_REPO Gruppi di sottoprogrammi
DBMS_CLOUD_REPO Operazioni di installazione SQL
Elenca i sottoprogrammi per le operazioni di installazione SQL nel pacchetto DBMS_CLOUD_REPO.
| Sottoprogramma | Descrizione |
|---|---|
Questa procedura carica i metadati DDL di un oggetto di database nel repository di codici cloud identificato dall'argomento handle repo.
|
|
Questa procedura esporta i metadati di tutti gli oggetti in uno schema in un ramo del repository di codici cloud identificato dall'argomento dell'handle repo.
|
|
Questa procedura installa istruzioni SQL da un file nel repository Cloud Code identificato dall'argomento handle repo.
|
|
| Questa procedura installa le istruzioni SQL da un buffer fornito come input. |
Argomento padre: DBMS_CLOUD_REPO Gruppi di sottoprogrammi
Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
In questa sezione vengono descritti i programmi secondari DBMS_CLOUD_REPO forniti con Autonomous AI Database.
Il pacchetto DBMS_CLOUD_REPO è costituito dai seguenti elementi:
- CREATE_BRANCH Procedura
Questa procedura crea una diramazione nel repository di codici cloud identificata dall'argomento handlerepo. - CREATE_REPOSITORY Procedura
Questa procedura crea un repository di codici cloud identificato dall'argomento handlerepo. - DELETE_BRANCH Procedura
Questa procedura elimina una diramazione nel repository del codice cloud identificata dall'argomento handlerepo. - DELETE_FILE Procedura
Questa procedura elimina un file dal repository di codici cloud identificato dall'argomento handlerepo. - DELETE_REPOSITORY Procedura
Questa procedura elimina il repository di codici cloud identificato dall'argomento handlerepo. - EXPORT_OBJECT Procedura
Questa procedura carica i metadati DDL di un oggetto di database nel repository del codice cloud identificato dall'argomento handlerepo. Questa procedura consente di caricare facilmente la definizione dei metadati di un oggetto di database in un unico passo. - EXPORT_SCHEMA Procedura
Questa procedura esporta i metadati di tutti gli oggetti in uno schema nel ramo del repository di codici cloud identificato dall'argomento dell'handlerepo. - GET_FILE Procedura e funzione
La funzione scarica il contenuto di un file dal repository di codici cloud. La procedura consente di scaricare il contenuto di un file dal repository Cloud Code e salvare il file in una directory. - INIT_AWS_REPO Funzione
Questa funzione inizializza un handle di repository AWS e restituisce un tipo opaco. - INIT_AZURE_REPO Funzione
Questa funzione inizializza un handle di repository Azure e restituisce un tipo opaco. Questa funzione è supportata solo per il provider cloud di Azure. - Funzione INIT_GITHUB_REPO
Questa funzione inizializza un handle del repository GitHub e restituisce un tipo opaco. - INIT_REPO Funzione
Questa funzione inizializza un handle di Cloud Code Repository e restituisce un oggetto JSON opaco. Questa funzione è un'interfaccia generica per accettare un documento JSON ed evita di dover modificare il codice. È sufficiente modificare un documento JSON quando si sposta un repository di codici da un repository di codici cloud a un altro repository di codici cloud. - INSTALL_FILE Procedura
Questa procedura installa le istruzioni SQL da un file nel repository del codice cloud identificato dall'argomento handlerepo. - INSTALL_SQL Procedura
Questa procedura installa le istruzioni SQL da un buffer fornito come input. - LIST_BRANCHES Funzione
Questa funzione elenca le diramazioni nella diramazione del repository di codici cloud identificata dall'argomento handlerepo. - LIST_COMMITS Funzione
Questa funzione elenca i commit nella diramazione Repository di codici cloud identificata dall'argomento handlerepo. - LIST_FILES Funzione
Questa funzione scarica un file dal repository di codici cloud. Facoltativamente, è possibile accedere al contenuto del file da una diramazione, un tag o un nome commit specifici. Per impostazione predefinita, è possibile accedere al file dalla diramazione predefinita del repository. I risultati includono i nomi dei file e i metadati aggiuntivi sui file. - LIST_REPOSITORIES Funzione
Questa funzione elenca tutti i repository di codici cloud identificati dall'argomento handlerepo. Se per l'handlerepoè stato specificato un nome di repository, la funzione non limita l'elenco al nome di repository specificato; elenca tutti i repository accessibili all'utente. - MERGE_BRANCH Procedura
Questa procedura unisce una diramazione del repository a un'altra diramazione specificata nel repository di codici cloud identificato dall'argomento dell'handlerepo. La proceduraMERGE_BRANCHnon è attualmente supportata in Azure. - PUT_FILE Procedura
Questa procedura carica un file nel repository di codici cloud identificato dall'argomento handlerepo. La procedura viene sovraccaricata per supportare il caricamento di un file da un oggetto directory o il caricamento del contenuto da un BLOB nel file di repository. - UPDATE_REPOSITORY Procedura
Questa procedura aggiorna un repository di codici cloud identificato dall'argomento di gestionerepo. UPDATE_REPOSITORY supporta l'aggiornamento del nome, della descrizione o dello stato di visibilità privata, come supportato dal repository di codici cloud.
Argomento padre: Pacchetto DBMS_CLOUD_REPO
Procedura CREATE_BRANCH
Questa procedura crea una diramazione nel repository di codici cloud identificata dall'argomento handle repo.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
branch_name |
Specifica il nome della diramazione repository. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
parent_branch_name |
Crea la nuova diramazione utilizzando il commit principale della diramazione padre specificata. Questo parametro è supportato per tutti i provider di servizi cloud. Se non si specifica un valore |
parent_commit_id |
Crea la nuova diramazione utilizzando il commit del repository specificato. Questo parametro è supportato per tutti i provider di servizi cloud. Se non si specifica un valore |
Esempio
Per creare una diramazione in un repository di codici cloud, è necessario specificare la diramazione padre o l'ID commit padre.
BEGIN
DBMS_CLOUD_REPO.CREATE_BRANCH (
repo => l_repo,
branch_name => 'test_branch',
parent_branch_name => 'main'
);
END;
/Nota per l'uso
Per eseguire la procedura DBMS_CLOUD_REPO.CREATE_BRANCH, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_REPO.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura CREATE_REPOSITORY
Questa procedura crea un repository di codici cloud identificato dall'argomento handle repo.
Sintassi
PROCEDURE DBMS_CLOUD_REPO.CREATE_REPOSITORY(
repo IN CLOB,
description IN CLOB DEFAULT NULL,
private IN BOOLEAN DEFAULT TRUE
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository.
Questo parametro è supportato per tutti i provider di servizi cloud. |
description |
Breve descrizione di testo per il repository.
Questo parametro è supportato per i provider cloud GITHUB e AWS. |
private |
Il repository è privato e accessibile solo con credenziali valide Questo parametro è supportato solo per il provider cloud GITHUB. |
Esempio
BEGIN
DBMS_CLOUD_REPO.CREATE_REPOSITORY(
repo => l_repo,
description => 'My test repo',
private => TRUE
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura DELETE_BRANCH
Questa procedura elimina una diramazione nel repository di codici cloud identificata dall'argomento handle repo.
Sintassi
PROCEDURE DBMS_CLOUD_REPO.DELETE_BRANCH (
repo IN CLOB,
branch_name IN VARCHAR2 DEFAULT NULL
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository.
Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
branch_name |
Elimina la diramazione da un repository specifico.
Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
Esempio
BEGIN
DBMS_CLOUD_REPO.DELETE_BRANCH (
repo => l_repo,
branch_name => 'test_branch'
);
END;
/Nota per l'uso
Per eseguire la procedura DBMS_CLOUD_REPO.DELETE_BRANCH, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_REPO.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura DELETE_FILE
Questa procedura elimina un file dal repository di codici cloud identificato dall'argomento handle repo.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
file_path |
Percorso del file per eliminare il file nel repository. |
branch_name |
Elimina il file da una diramazione specifica. |
commit_details |
Dettagli commit come documento JSON {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } |
Esempio
BEGIN
DBMS_CLOUD_REPO.DELETE_FILE(
repo => l_repo,
file_path => 'scripts/test3.sql',
branch_name => 'test_branch'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura DELETE_REPOSITORY
Questa procedura elimina il repository di codici cloud identificato dall'argomento handle repo.
Sintassi
PROCEDURE DBMS_CLOUD_REPO.DELETE_REPOSITORY(
repo IN CLOB
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
Esempio
BEGIN
DBMS_CLOUD_REPO.DELETE_REPOSITORY(
repo => l_repo
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura EXPORT_OBJECT
Questa procedura carica i metadati DDL di un oggetto di database nel repository di codici cloud identificato dall'argomento handle repo. Questa procedura consente di caricare facilmente la definizione dei metadati di un oggetto di database in un unico passo.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
file_path |
Percorso del file per caricare i metadati dell'oggetto nel repository. |
object_type |
Tipo di oggetto supportato da DBMS_METADATA. Per informazioni dettagliate, vedere DBMS_METADATA: tabella Tipi di oggetto. |
object_name |
Nome dell'oggetto di database per recuperare i metadati. |
object_schema |
Schema proprietario dell'oggetto di database. |
branch_name |
Inserire il file in una diramazione specifica. |
commit_details |
Dettagli commit come documento JSON: |
append |
Aggiungi DDL metadati al file esistente. |
Nota per l'uso
Per il controllo personalizzato sull'oggetto DDL, è possibile utilizzare DBMS_METADATA.GET_DDL insieme a DBMS_CLOUD_REPO.PUT_FILE. Per ottenere la definizione dei metadati dell'oggetto, l'utente corrente deve disporre di privilegi per recuperare i metadati dell'oggetto. Per informazioni sui requisiti di sicurezza del pacchetto, vedere DBMS_METADATA.
Esempio
BEGIN
DBMS_CLOUD_REPO.EXPORT_OBJECT(
repo => l_repo,
object_type => 'PACKAGE',
object_name => 'MYPACK',
file_path => 'mypack.sql'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura EXPORT_SCHEMA
Questa procedura esporta i metadati di tutti gli oggetti in uno schema nella diramazione Repository di codici cloud identificata dall'argomento handle repo.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
file_path |
Specifica il nome del file di schema da caricare nel repository. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
schema_name |
Specifica il nome dello schema per il quale deve essere caricato uno script DDL nella diramazione del repository di codici cloud. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
filter_list |
Specifica il CLOB dell'array JSON che definisce le condizioni di filtro per includere o escludere gli oggetti i cui metadati devono essere esportati. Questo parametro è supportato per tutti i provider di servizi cloud. I parametri JSON per
filter_list sono:
|
branch_name |
Specifica il nome della diramazione repository. Questo parametro è supportato per tutti i provider di servizi cloud. Se non si fornisce un valore |
commit_details |
Dettagli commit come documento JSON {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }Questo parametro è supportato per tutti i provider di servizi cloud. Se non si fornisce un valore |
Esempio
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;
/Nota per l'uso
Per eseguire la procedura DBMS_CLOUD_REPO.EXPORT_SCHEMA, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_REPO.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
GET_FILE Procedura e funzione
La funzione scarica il contenuto di un file dal repository del codice cloud. La procedura consente di scaricare il contenuto di un file dal repository Cloud Code e salvare il file in una directory.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
file_path |
Percorso file nel repository. |
directory_name |
Nome dell'oggetto directory per salvare il contenuto del file. |
target_file_name |
Nome del file di destinazione per salvare il contenuto nella directory. |
branch_name |
Recupera file da una diramazione specifica. |
tag_name |
Recupera file da un tag specifico. |
commit_name |
Recupera file da un commit specifico. |
Esempio
BEGIN
DBMS_CLOUD_REPO.GET_FILE(
repo => l_repo,
file_path => 'test3.sql',
directory_name => 'DATA_PUMP_DIR',
target_file_name => 'test2.sql'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione INIT_AWS_REPO
Questa funzione inizializza un handle di repository AWS e restituisce un tipo opaco.
Sintassi
FUNCTION DBMS_CLOUD_REPO.INIT_AWS_REPO(
credential_name IN VARCHAR2,
repo_name IN VARCHAR2,
region IN VARCHAR2
) RETURN repo;Parametri
| Parametro | Descrizione |
|---|---|
credential_name |
Oggetto credenziale che specifica accesskey/secretkey AWS CodeCommit. |
repo_name |
Specifica il nome del repository. |
region |
Specifica l'area AWS per il repository CodeCommit. |
Esempio
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_AWS_REPO(
credential_name => 'AWS_CRED',
repo_name => 'my_repo',
region => 'us-east-1'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione INIT_AZURE_REPO
Questa funzione inizializza un handle di repository Azure e restituisce un tipo opaco. Questa funzione è supportata solo per il provider cloud di Azure.
Sintassi
FUNCTION DBMS_CLOUD_REPO.INIT_AZURE_REPO(
credential_name IN VARCHAR2,
repo_name IN VARCHAR2,
organization IN VARCHAR2,
project IN VARCHAR2
) RETURN repo;Parametri
| Parametro | Descrizione |
|---|---|
credential_name |
Oggetto credenziale che specifica Azure, con un nome utente e un token di accesso personale (PAT). |
repo_name |
Specifica il nome del repository. |
organization |
Specifica l'organizzazione DevOps di Azure. |
project |
Nome progetto team Azure. |
Esempio
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_AZURE_REPO(
credential_name => 'AZURE_CRED',
repo_name => 'my_repo',
organization => 'myorg',
project => 'myproj',
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione INIT_GITHUB_REPO
Questa funzione inizializza un handle del repository GitHub e restituisce un tipo opaco.
Sintassi
FUNCTION DBMS_CLOUD_REPO.INIT_GITHUB_REPO(
credential_name IN VARCHAR2 DEFAULT NULL,
repo_name IN VARCHAR2,
owner IN VARCHAR2)
RETURN repo;Parametri
| Parametro | Descrizione |
|---|---|
credential_name |
Oggetto credenziale che specifica GitHub. E-mail utente e token di accesso personale (PAT). |
repo_name |
Specifica il nome del repository. |
owner |
Specifica il proprietario del repository. |
Esempio
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_GITHUB_REPO(
credential_name => 'GITHUB_CRED',
repo_name => 'my_repo',
owner => 'foo'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione INIT_REPO
Questa funzione inizializza un handle di Cloud Code Repository e restituisce un oggetto JSON opaco. Questa funzione è un'interfaccia generica per accettare un documento JSON ed evita di dover modificare il codice. È sufficiente modificare un documento JSON quando si sposta un repository di codici da un repository di codici cloud a un altro repository di codici cloud.
Sintassi
FUNCTION DBMS_CLOUD_REPO.INIT_REPO(
params IN CLOB)
RETURN CLOB;Parametri
| Parametro JSON | Descrizione |
|---|---|
provider |
Provider del repository di codici cloud tra i seguenti: DBMS_CLOUD_REPO.GITHUB_REPO ('GITHUB')DBMS_CLOUD_REPO.AWS_REPO ('AWS')DBMS_CLOUD_REPO.AZURE_REPO ('AZURE') |
repo_name |
Specifica il nome del repository. DBMS_CLOUD_REPO.PARAM_REPO_NAME |
owner |
GitHub Proprietario del repository. DBMS_CLOUD_REPO.PARAM_OWNERQuesto parametro è applicabile solo per il provider cloud GitHub. |
region |
Area repository AWS DBMS_CLOUD_REPO_PARAM_REGIONQuesto parametro è applicabile solo per il provider cloud AWS. |
organization |
Organizzazione Azure DBMS_CLOUD_REPO_PARAM_ORGANIZATIONQuesto parametro è applicabile solo per il provider cloud di Azure. |
project |
Progetto Team Azure DBMS_CLOUD_REPO_PARAM_PROJECTQuesto parametro è applicabile solo per il provider cloud Azure |
Esempio
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_REPO(
params => JSON_OBJECT('credential_name' value 'mycred',
'repo_name' value 'myrepo',
'repo_owner' value 'foo')
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura INSTALL_FILE
Questa procedura installa istruzioni SQL da un file nel repository Cloud Code identificato dall'argomento handle repo.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
file_path |
Percorso file nel repository. |
branch_name |
Diramazione per installare il file da una diramazione specifica. |
tag_name |
Tag per installare il file da una tag specifica. |
commit_name |
ID commit per installare il file da un commit specifico. |
stop_on_error |
Interrompere l'esecuzione delle istruzioni SQL al primo errore. |
Note sull'uso
-
È possibile installare istruzioni SQL contenenti SQL nidificate da un file del repository Cloud Code utilizzando quanto riportato di seguito.
-
@: include un file SQL con un percorso relativo alla ROOT del repository. -
@@: include un file SQL con un percorso relativo al file corrente.
-
-
Gli script sono intesi come script di installazione dello schema e non come script SQL generici:
- Gli script non possono contenere comandi specifici del client SQL*Plus.
- Gli script non possono contenere bind variable o script parametrizzati.
- Le istruzioni SQL devono essere terminate con una barra su una nuova riga (/).
- Gli script possono contenere istruzioni DDL e DML PLSQL, ma le istruzioni
SELECTdirette non sono supportate. È supportato l'utilizzo di SELECT all'interno di un blocco PL/SQL.
Qualsiasi istruzione SQL che può essere eseguita utilizzando
EXECUTE IMMEDIATEfunzionerà se non contiene bind variable o definisce.
Esempio
BEGIN
DBMS_CLOUD_REPO.INSTALL_FILE(
repo => l_repo,
file_path => 'test3.sql',
stop_on_error => FALSE
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura INSTALL_SQL
Questa procedura installa le istruzioni SQL da un buffer fornito come input.
Sintassi
PROCEDURE DBMS_CLOUD_REPO.INSTALL_SQL(
content IN CLOB,
stop_on_error IN BOOLEAN DEFAULT TRUE
);Parametri
| Parametro | Descrizioni |
|---|---|
content |
CLOB contenente le istruzioni SQL da eseguire. |
stop_on_error |
Interrompere l'esecuzione delle istruzioni SQL al primo errore. |
Note sull'uso
-
Gli script sono intesi come script di installazione dello schema e non come script SQL generici:
- Gli script non possono contenere comandi specifici del client SQL*Plus.
- Gli script non possono contenere bind variable o script parametrizzati.
- Le istruzioni SQL devono essere terminate con una barra su una nuova riga (/).
- Gli script possono contenere istruzioni DDL e DML PLSQL, ma le istruzioni
SELECTdirette non sono supportate. È supportato l'utilizzo di SELECT all'interno di un blocco PL/SQL.
Qualsiasi istruzione SQL che può essere eseguita utilizzando
EXECUTE IMMEDIATEfunzionerà se non contiene bind variable o definisce.
Esempio
BEGIN
DBMS_CLOUD_REPO.INSTALL_SQL(
content => 'create table t1 (x varchar2(30))' || CHR(10) || '/',
stop_on_error => FALSE
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione LIST_BRANCHES
Questa funzione elenca le diramazioni nella diramazione del repository di codici cloud identificate dall'argomento handle repo.
Sintassi
FUNCTION DBMS_CLOUD_REPO.LIST_BRANCHES(
repo IN CLOB
) RETURN list_branch_ret_tab PIPELINED PARALLEL_ENABLE;Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository.
Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
Esempio
SELECT * FROM DBMS_CLOUD_REPO.LIST_BRANCHES (repo => l_repo);
Note sull'uso
-
Questa è una funzione di tabella con tipo restituito
list_branch_ret_tab. -
DBMS_CLOUD_REPO.LIST_BRANCHESrestituisce la colonna:name, che indica il nome della diramazione Cloud Code Repository.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione LIST_COMMITS
Questa funzione elenca i commit nella diramazione del repository di codici cloud identificata dall'argomento handle repo.
Sintassi
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;Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository.
Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
branch_name |
Elenca i commit da una diramazione specifica.
Questo parametro è supportato per tutti i provider di servizi cloud. Se non si specifica un valore |
file_path |
Elenca i file sotto il percorso della sottocartella specificato nel repository.
Questo parametro è supportato solo per i provider cloud Git e Azure. Se non si specifica un valore |
commit_id |
Elenca i file che iniziano dal file sha/id specificatoQuesto parametro è supportato per tutti i provider di servizi cloud. Se non si specifica un valore |
Esempio
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS(repo => l_repo);
Esempio
SELECT name FROM DBMS_CLOUD_REPO.LIST_COMMITS (
repo => l_repo,
commit_id => '66dd2b23b74cd0afabd11af66c6aa9c550540ba6',
file_path => 'sub_dir/test11.sql'
);Note sull'uso
-
Questa è una funzione di tabella con tipo restituito
list_commit_ret_tab. -
DBMS_CLOUD_REPO.LIST_COMMITSrestituisce la colonna:commit_id.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione LIST_FILES
Questa funzione scarica un file dal repository di codici cloud. Facoltativamente, è possibile accedere al contenuto del file da una diramazione, un tag o un nome commit specifici. Per impostazione predefinita, è possibile accedere al file dalla diramazione predefinita del repository. I risultati includono i nomi dei file e i metadati aggiuntivi sui file.
Sintassi
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;Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
path |
Elenca i file sotto il percorso della sottocartella specificato nel repository. |
branch_name |
Elenca i file da una diramazione specifica. |
tag_name |
Elenca i file da un tag specifico. |
commit_name |
Elenca i file da un commit specifico. |
Note sull'uso
-
Questa è una funzione di tabella con tipo restituito
list_file_ret_tab. -
DBMS_CLOUD_REPO.LIST_FILESrestituisce le colonne:id,name,urlebytes.
Esempio
SELECT name FROM DBMS_CLOUD_REPO.LIST_FILES(repo => l_repo);
NAME
-------------------------
test3.sql
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Funzione LIST_REPOSITORIES
Questa funzione elenca tutti i repository di codici cloud identificati dall'argomento handle repo. Se per l'handle repo è stato specificato un nome di repository, la funzione non limita l'elenco al nome di repository specificato; elenca tutti i repository accessibili all'utente.
Sintassi
FUNCTION DBMS_CLOUD_REPO.LIST_REPOSITORIES(
repo IN CLOB
) RETURN list_repo_ret_tab PIPELINED PARALLEL_ENABLE;Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. Questo parametro è supportato da tutti i provider di servizi cloud. |
Note sull'uso
-
Questa è una funzione di tabella con tipo restituito
list_repo_ret_tab. -
DBMS_CLOUD_REPO.LIST_REPOSITORIESrestituisce le colonne:id,name,owner,description,private,url,bytes,createdelast_modified.
Esempio
SELECT name description FROM DBMS_CLOUD_REPO.LIST_REPOSITORIES(:repo);
NAME DESCRIPTION
--------------------- ---------------
TestRepo1 My test repo
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura MERGE_BRANCH
Questa procedura unisce una diramazione del repository a un'altra diramazione specificata nel repository di codici cloud identificata dall'argomento di gestione repo. La procedura MERGE_BRANCH non è attualmente supportata in Azure.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. Questo parametro è obbligatorio e supportato per i provider cloud GITHUB e AWS. |
branch_name |
Specifica il nome della diramazione Git da unire. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
target_branch_name |
Specifica il nome della diramazione target in cui eseguire l'unione. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
commit_details |
Dettagli commit come documento JSON {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } }Se non si specifica un valore |
Esempio
BEGIN
DBMS_CLOUD_REPO.MERGE_BRANCH (
repo => l_repo,
branch_name => 'test_branch',
target_branch_name => 'main'
);
END;
/Nota per l'uso
Per eseguire la procedura DBMS_CLOUD_REPO.MERGE_BRANCH, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_REPO.
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura PUT_FILE
Questa procedura carica un file nel repository di codici cloud identificato dall'argomento handle repo. La procedura viene sovraccaricata per supportare il caricamento di un file da un oggetto directory o il caricamento del contenuto da un BLOB nel file di repository.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository. |
file_path |
Percorso del file per caricare il file nel repository. |
contents |
BLOB contenente il contenuto del file. |
directory_name |
Nome dell'oggetto directory contenente il nome del file. |
source_file_name |
Nome del file di origine da caricare nel repository. |
branch_name |
Inserire il file in una diramazione specifica. |
commit_details |
Dettagli commit come documento JSON: {"message": "Commit message", "author": {"name": "Committing user name", "email": "Email of committing user" } } |
Esempio
BEGIN
DBMS_CLOUD_REPO.PUT_FILE(
repo => l_repo,
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
Procedura UPDATE_REPOSITORY
Questa procedura aggiorna un repository di codici cloud identificato dall'argomento handle repo. UPDATE_REPOSITORY supporta l'aggiornamento del nome, della descrizione o dello stato di visibilità privata, come supportato dal repository di codici cloud.
Sintassi
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
);Parametri
| Parametro | Descrizione |
|---|---|
repo |
Specifica l'handle del repository.
Questo parametro è supportato per tutti i provider di servizi cloud. |
new_name |
Nuovo nome per il repository.
Questo parametro è supportato per tutti i provider di servizi cloud. |
description |
Breve descrizione di testo per il repository.
Questo parametro è supportato per i provider cloud GITHUB e AWS. |
private |
Il repository è privato e accessibile solo con credenziali valide. Questo parametro è supportato per il provider cloud GITHUB. |
Esempio
BEGIN
DBMS_CLOUD_REPO.UPDATE_REPOSITORY(
repo => l_repo,
new_name => 'repo2'
);
END;
/
Argomento padre: Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO