Riepilogo dei sottoprogrammi DBMS_CLOUD_REPO
In questa sezione vengono descritti i sottoprogrammi DBMS_CLOUD_REPO
forniti con Autonomous Database.
Il pacchetto DBMS_CLOUD_REPO
è composto dai seguenti componenti:
Argomenti correlati
Prerequisiti
Come sviluppatore, puoi utilizzare le procedure DBMS_CLOUD con Autonomous Database distribuite su Oracle Public Cloud, Multicloud o Exadata Cloud@Customer.
A seconda della scelta di distribuzione, è necessario soddisfare i seguenti prerequisiti per utilizzare le procedure DBMS_CLOUD con i provider di servizi Amazon S3, Azure Blob Storage e Google Cloud Storage.
- Crea un gateway NAT nella rete cloud virtuale (VCN) in cui risiedono le tue risorse di Autonomous Database seguendo le istruzioni riportate in Crea un gateway NAT nella documentazione di Oracle Cloud Infrastructure.
- Dopo aver creato il gateway NAT, aggiungere una regola di instradamento e una regola di sicurezza di uscita a ogni subnet (nella VCN) in cui risiedono le risorse di Autonomous Database in modo che queste risorse possano utilizzare il gateway per ottenere una chiave pubblica dall'istanza di Azure AD:
- Andare alla pagina Dettagli subnet per la subnet.
- Nella scheda Informazioni subnet, fare clic sul nome della tabella di instradamento della subnet per visualizzare la relativa pagina Dettagli tabella di instradamento.
- Nella tabella delle regole di instradamento esistenti, verificare se esiste già una regola con le seguenti caratteristiche:
- Data: 0.0.0.0/0
- Tipo di destinazione: gateway NAT
- Destinazione: il nome del gateway NAT appena creato nella VCN
Se la regola non esiste, fare clic su Aggiungi regole di instradamento e aggiungere una regola di instradamento con queste caratteristiche.
- Tornare alla pagina Dettagli subnet per la subnet.
- Nella tabella Elenchi di sicurezza della subnet, fare clic sul nome della lista di sicurezza della subnet per visualizzare la relativa pagina Dettagli lista di sicurezza.
- Nel menu laterale, in Risorse, fare clic su Regole di uscita.
- Nella tabella delle regole di uscita esistenti, verificare se esiste già una regola con le seguenti caratteristiche:
- Tipo di destinazione: CIDR
- Data: 0.0.0.0/0
- Protocollo IP: TCP
- Intervallo porte di origine: 443
- Intervallo di porte di destinazione: tutte
Se una regola di questo tipo non esiste, fare clic su Aggiungi regole di uscita e aggiungere una regola di uscita con queste caratteristiche.
Le impostazioni del proxy HTTP nell'ambiente devono consentire al database di accedere al provider di servizi cloud.
Nota
La configurazione di rete, incluso il proxy HTTP, può essere modificata solo fino a quando lo stato dell'infrastruttura Exadata non è Richiede attivazione. Una volta attivato, non è possibile modificare tali impostazioni.L'impostazione di un proxy HTTP per un'infrastruttura Exadata già fornita richiede una richiesta di servizio (SR) in My Oracle Support. Per informazioni dettagliate, vedere Create a Service Request in My Oracle Support.
CREATE_BRANCH Procedura
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 del repository. Questo parametro è obbligatorio e supportato per tutti i provider cloud. |
parent_branch_name |
Crea il nuovo ramo utilizzando il commit principale del ramo padre specificato. Questo parametro è supportato per tutti i provider 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 cloud. Se non si fornisce un valore |
Esempio
Nota
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
.
CREATE_REPOSITORY Procedura
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 cloud. |
description |
Breve descrizione del testo per il repository.
Questo parametro è supportato per il 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;
/
DELETE_BRANCH Procedura
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 |
Eliminare 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
.
DELETE_FILE Procedura
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;
/
DELETE_REPOSITORY Procedura
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;
/
EXPORT_OBJECT Procedura
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 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 file per caricare i metadati dell'oggetto nel repository. |
object_type |
Tipo di oggetto supportato da DBMS_METADATA. Per ulteriori informazioni, vedere DBMS_METADATA: Tabella Tipi di oggetto in Oracle Database 19c PL/SQL Packages and Types Reference o Oracle Database 23ai PL/SQL Packages and Types Reference. |
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 a 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, è necessario che l'utente corrente disponga dei privilegi necessari per recuperare i metadati dell'oggetto. Per i requisiti di sicurezza del package, vedere DBMS_METADATA in Oracle Database 19c PL/SQL Packages and Types Reference o Oracle Database 23ai PL/SQL Packages and Types Reference.
Esempio
BEGIN
DBMS_CLOUD_REPO.EXPORT_OBJECT
(
repo => l_repo,
object_type => 'PACKAGE',
object_name => 'MYPACK',
file_path => 'mypack.sql'
);
END;
/
EXPORT_SCHEMA Procedura
Questa procedura esporta i metadati di tutti gli oggetti in uno schema nel ramo Repository di codici cloud identificato dall'argomento di 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 cloud. I parametri JSON per
filter_list sono:
|
branch_name |
Specifica il nome della diramazione del repository. Questo parametro è supportato per tutti i provider 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 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
.
GET_FILE Procedura e funzione
La funzione scarica il contenuto di un file dal repository Cloud Code. La procedura consente di scaricare il contenuto di un file dal repository Cloud Code e di 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 del file nel repository. |
directory_name |
Nome oggetto directory per salvare il contenuto del file. |
target_file_name |
Nome del file di destinazione per salvare i contenuti nella directory. |
branch_name |
Recupera il file da una diramazione specifica. |
tag_name |
Recupera il file da una tag specifica. |
commit_name |
Recupera il 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;
/
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 la chiave di accesso/chiave segreta 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;
/
Funzione INIT_AZURE_REPO
Questa funzione inizializza un handle del repository di 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 delle credenziali 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 del progetto del team Azure. |
Esempio
BEGIN
:repo := DBMS_CLOUD_REPO.INIT_AZURE_REPO
(
credential_name => 'AZURE_CRED',
repo_name => 'my_repo',
organization => 'myorg',
project => 'myproj',
);
END;
/
Funzione INIT_GITHUB_REPO
Questa funzione inizializza un handle di 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;
/
Funzione INIT_REPO
Questa funzione inizializza un handle del repository di codici cloud 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 di repository di codici cloud dai seguenti elementi: 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_OWNER Questo parametro è applicabile solo per il provider cloud GitHub. |
region |
Area repository AWS DBMS_CLOUD_REPO_PARAM_REGION Questo parametro è applicabile solo per il provider cloud AWS. |
organization |
Organizzazione Azure DBMS_CLOUD_REPO_PARAM_ORGANIZATION Questo parametro è applicabile solo per il provider cloud di Azure. |
project |
Progetto team Azure DBMS_CLOUD_REPO_PARAM_PROJECT Questo parametro è applicabile solo per il provider cloud di 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;
/
INSTALL_FILE Procedura
Questa procedura installa le 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 del 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 |
Arrestare l'esecuzione delle istruzioni SQL al primo errore. |
Note sull'uso
-
È possibile installare istruzioni SQL contenenti istruzioni SQL nidificate da un file di repository di Cloud Code utilizzando gli elementi riportati 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 con parametri.
- 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
SELECT
dirette non sono supportate. È supportato l'uso di SELECT all'interno di un blocco PL/SQL.
Qualsiasi istruzione SQL che può essere eseguita utilizzando
EXECUTE IMMEDIATE
funzionerà se non contiene bind variable o definizioni.
Esempio
BEGIN
DBMS_CLOUD_REPO.INSTALL_FILE
(
repo => l_repo,
file_path => 'test3.sql',
stop_on_error => FALSE
);
END;
/
INSTALL_SQL Procedura
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 |
Arrestare 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 con parametri.
- 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
SELECT
dirette non sono supportate. È supportato l'uso di SELECT all'interno di un blocco PL/SQL.
Qualsiasi istruzione SQL che può essere eseguita utilizzando
EXECUTE IMMEDIATE
funzionerà se non contiene bind variable o definizioni.
Esempio
BEGIN
DBMS_CLOUD_REPO.INSTALL_SQL
(
content => 'create table t1 (x varchar2(30))' || CHR(10) || '/',
stop_on_error => FALSE
);
END;
/
Funzione LIST_BRANCHES
Questa funzione elenca i rami nel ramo Cloud Code Repository identificato 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
-
Funzione di tabella con pipeline con tipo restituito
list_branch_ret_tab.
-
DBMS_CLOUD_REPO.LIST_BRANCHES
restituisce la colonnaname
, che indica il nome della diramazione del repository di codici cloud.
Funzione LIST_COMMITS
Questa funzione elenca i commit nella diramazione Cloud Code Repository 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 cloud. Se non si specifica un valore |
file_path |
Elenca i file nel percorso della sottocartella specificato nel repository.
Questo parametro è supportato solo per i provider cloud Git e Azure. Se non si fornisce un valore |
commit_id |
Elenca i file a partire dal file sha/id specificatoQuesto parametro è supportato per tutti i provider cloud. Se non si fornisce 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
-
Funzione di tabella con pipeline con tipo restituito
list_commit_ret_tab.
-
DBMS_CLOUD_REPO.LIST_COMMITS
restituisce la colonna:commit_id
.
Funzione LIST_FILES
Questa funzione scarica un file dal repository Cloud Code. Facoltativamente, è possibile accedere al contenuto del file da una diramazione, un tag o un nome di commit specifici. Per impostazione predefinita, l'accesso al file viene eseguito dalla diramazione del repository predefinita. I risultati includono i nomi dei file e metadati aggiuntivi relativi ai 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 nel percorso della sottocartella specificato nel repository. |
branch_name |
Elenca i file da una diramazione specifica. |
tag_name |
Elenca i file da una tag specifica. |
commit_name |
Elenca i file da un commit specifico. |
Note sull'uso
-
Funzione di tabella con pipeline con tipo restituito
list_file_ret_tab.
-
DBMS_CLOUD_REPO.LIST_FILES
restituisce le colonne:id
,name
,url
ebytes
.
Esempio
SELECT name FROM DBMS_CLOUD_REPO.LIST_FILES
(repo => l_repo);
NAME
-------------------------
test3.sql
Funzione LIST_REPOSITORIES
Questa funzione elenca tutti i repository di codici cloud identificati dall'argomento handle repo
. I risultati includono i nomi dei repository e metadati aggiuntivi relativi ai repository.
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 cloud. |
description |
Breve descrizione del testo per il repository.
Questo parametro è supportato dai provider cloud GITHUB e AWS. |
private |
Il repository è privato e accessibile solo con credenziali valide Questo parametro è supportato per il provider cloud GITHUB. |
Note sull'uso
-
Funzione di tabella con pipeline con tipo restituito
list_repo_ret_tab.
-
DBMS_CLOUD_REPO.LIST_REPOSITORIES
restituisce le colonne:id
,name
,owner
,description
,private
,url
,bytes
,created
elast_modified
.
Esempio
SELECT name description FROM DBMS_CLOUD_REPO.LIST_REPOSITORIES
(:repo);
NAME DESCRIPTION
--------------------- ---------------
TestRepo1 My test repo
MERGE_BRANCH Procedura
Questa procedura unisce una diramazione del repository a un'altra diramazione specificata nel repository di codici cloud identificato dall'argomento handle 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 di destinazione 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 fornisce 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
.
PUT_FILE Procedura
Questa procedura carica un file nel repository di codici cloud identificato dall'argomento handle repo
. La procedura è sovraccarica per supportare il caricamento di un file da un oggetto directory o il caricamento del contenuto da un BLOB nel file del 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 file per il caricamento del file nel repository. |
contents |
BLOB che contiene il contenuto del file. |
directory_name |
Nome oggetto directory che contiene il nome 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;
/
UPDATE_REPOSITORY Procedura
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 Cloud Code.
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 cloud. |
new_name |
Nuovo nome del repository.
Questo parametro è supportato per tutti i provider cloud. |
description |
Breve descrizione del 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;
/