Pacchetto DBMS_CLOUD_MIGRATION

Il package DBMS_CLOUD_MIGRATION facilita la traduzione del codice SQL da un'architettura SQL non Oracle a Oracle SQL.

Riepilogo dei sottoprogrammi DBMS_CLOUD_MIGRATION

La tabella riportata di seguito riassume i sottoprogrammi inclusi nel pacchetto DBMS_CLOUD_MIGRATION.

Sottoprogramma Descrizione

MIGRATE_SQL Procedura e funzione

MIGRATE_SQL facilita la traduzione delle istruzioni SQL scritte in SQL non Oracle in Oracle SQL. Le versioni SQL supportate sono PostgreSQL, MySQL e SQL Server.

Procedura MIGRATE_FILE

Questa procedura converte un file contenente istruzioni SQL da un database di origine specificato come input e converte le istruzioni SQL in Oracle SQL.

Procedura ENABLE_TRANSLATION

Questa procedura consente la traduzione SQL in tempo reale e l'esecuzione di istruzioni SQL non Oracle in un Autonomous Database. Le versioni SQL supportate sono PostgreSQL, MySQL e SQL Server.

Procedura DISABLE_TRANSLATION

Questa procedura disabilita la traduzione della lingua SQL.

MIGRATE_SQL Procedura e funzione

MIGRATE_SQL facilita la traduzione delle istruzioni SQL scritte in SQL non Oracle in Oracle SQL. Questa procedura è sovraccaricata e presenta varianti di funzione e procedura.

Sintassi

DBMS_CLOUD_MIGRATION.MIGRATE_SQL (
   original_sql  IN  CLOB,
   output_sql    OUT CLOB,
   source_db     IN  VARCHAR2);

DBMS_CLOUD_MIGRATION.MIGRATE_SQL (
   original_sql  IN  CLOB,
   source_db     IN  VARCHAR2);
RETURN CLOB;

Parametri

Parametro Descrizione

original_sql

Specifica l'istruzione SQL originale nel database di origine che deve essere convertita in Oracle SQL.

Questo parametro è obbligatorio.

output_sql

Restituisce l'istruzione SQL tradotta.

Questo parametro è obbligatorio.

source_db

Specifica il nome del database d'origine. I valori validi per questo parametro sono POSTGRES, MYSQL, SQLSERVER.

Questo parametro è obbligatorio.

Valori restituiti

Il form della funzione DBMS_CLOUD_MIGRATION.MIGRATE_SQL restituisce un valore CLOB che contiene la versione Oracle SQL tradotta dell'input ORIGINAL_SQL.

Note sull'uso

Esempi

Form della procedura DBMS_CLOUD_MIGRATION.MIGRATE_SQL per tradurre l'istruzione PostgreSQL in Oracle SQL:

BEGIN
  DBMS_CLOUD_MIGRATION.MIGRATE_SQL(      
    original_sql => 'SELECT e.employee_id, e.last_name, e.salary FROM employees AS e;',
    output_sql   => output_variable,
    source_db    => 'POSTGRES');
END;        
/

Form della funzione DBMS_CLOUD_MIGRATION.MIGRATE_SQL per tradurre l'istruzione PostgreSQL in Oracle SQL:

SELECT DBMS_CLOUD_MIGRATION.MIGRATE_SQL
    ('CREATE TABLE IF NOT EXISTS cars (brand VARCHAR(255), model VARCHAR(255), year INT)', 'POSTGRES') AS output 
    FROM DUAL;

OUTPUT
------------------------------------------------------------------------------
create table cars (brand VARCHAR2(255), model VARCHAR2(255), year NUMBER(10);

Procedura MIGRATE_FILE

MIGRATE_FILE accetta come input un file contenente istruzioni SQL da un database di origine specificato e converte le istruzioni SQL in Oracle SQL.

Sintassi

DBMS_CLOUD_MIGRATION.MIGRATE_FILE (
    credential_name  IN VARCHAR2,
    location_uri     IN VARCHAR2,
    target_uri       IN VARCHAR2 DEFAULT NULL,
    source_db        IN VARCHAR2,
    params           IN CLOB

Parametri

Parametro Descrizione

credential_name

Nome della credenziale per accedere allo storage degli oggetti cloud.

Questo parametro è obbligatorio.

Facoltativamente, la credenziale utilizzata per accedere all'area di memorizzazione degli oggetti cloud può essere definita configurando criteri e ruoli. Per ulteriori informazioni, vedere Configurare criteri e ruoli per accedere alle risorse.

location_uri

URI del file di origine. Il formato dell'URI dipende dal servizio di storage degli oggetti cloud in uso. Per i dettagli, vedere Formati URI DBMS_CLOUD.

Questo parametro è obbligatorio.

target_uri

URI del file di destinazione, in cui deve essere memorizzato il file tradotto. Se non si specifica un valore per questo parametro, il file tradotto viene memorizzato nella stessa posizione del file di origine.

Il formato dell'URI dipende dal servizio di storage degli oggetti cloud in uso. Per i dettagli, vedere Formati URI DBMS_CLOUD.

source_db

Specifica la lingua del database di origine. I valori validi per questo parametro sono POSTGRES, MYSQL, SQLSERVER.

Questo parametro è obbligatorio.

params

Specifica i parametri aggiuntivi che possono essere passati in formato JSON.

Note sull'uso

  • Per eseguire DBMS_CLOUD_MIGRATION.MIGRATE_FILE, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_MIGRATION.

  • Il parametro credential_name specifica la credenziale per accedere all'URI dello storage degli oggetti cloud. L'utente che esegue DBMS_CLOUD_MIGRATION.MIGRATE_FILE.must deve disporre del privilegio EXECUTE per l'oggetto credenziale utilizzato per accedere all'URI dello storage degli oggetti. Cioè, le credenziali specificate con il parametro credential_name.

Esempio

BEGIN
 DBMS_CLOUD_MIGRATION.MIGRATE_FILE (
     credential_name => 'OBJ_STORE_CRED',
     location_uri    => 'https://objectstorage.region.oraclecloud.com/n/namespace/b/bucket/o/files/postgrestest.sql',
     source_db       => 'POSTGRES'
    );
END;
/

Il parametro credential_name specifica la credenziale per accedere all'URI dello storage degli oggetti cloud.

location_uri è l'URI del file di origine. Il formato dell'URI dipende dal servizio di storage degli oggetti cloud in uso. Per ulteriori informazioni, vedere DBMS_CLOUD Formati URI.

In questo esempio, namespace-string è lo spazio di nomi dello storage degli oggetti Oracle Cloud Infrastructure e bucketname è il nome del bucket. Per ulteriori informazioni, vedere Informazioni sugli spazi di nomi dello storage degli oggetti.

Procedura ENABLE_TRANSLATION

La procedura ENABLE_TRANSLATION consente la traduzione SQL in tempo reale e l'esecuzione di istruzioni SQL non Oracle nell'Autonomous Database.

Sintassi

Parametri

DBMS_CLOUD_MIGRATION.ENABLE_TRANSLATION (
   source_db  IN  VARCHAR2);
Parametro Descrizione

source_db

Specifica la lingua del database di origine. I valori validi per questo parametro sono POSTGRES, MYSQL, SQLSERVER.

Questo parametro è obbligatorio.

Nota per l'uso

  • Per eseguire DBMS_CLOUD_MIGRATION.ENABLE_TRANSLATION, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_MIGRATION.

Esempio

BEGIN
  DBMS_CLOUD_MIGRATION.ENABLE_TRANSLATION (source_db => 'POSTGRES');
END;        
/

Procedura DISABLE_TRANSLATION

La procedura DISABLE_TRANSLATION disabilita la traduzione della lingua SQL. Viene restituito un errore se la traduzione della lingua SQL non è abilitata per la sessione.

Sintassi

DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION();

Nota per l'uso

  • Per eseguire DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION, è necessario aver eseguito il login come utente ADMIN o disporre del privilegio EXECUTE su DBMS_CLOUD_MIGRATION.

Esempio

BEGIN
  DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION();
END;        
/