Paquete DBMS_CLOUD_MIGRATION

El paquete DBMS_CLOUD_MIGRATION facilita la traducción del código SQL de un tipo SQL que no es de Oracle a Oracle SQL.

Resumen de subprogramas DBMS_CLOUD_MIGRATION

En esta tabla se resumen los subprogramas incluidos en el paquete DBMS_CLOUD_MIGRATION.

Subprograma Descripción

MIGRATE_SQL Procedimiento y función

MIGRATE_SQL facilita la conversión de sentencias SQL escritas en SQL que no es de Oracle en SQL de Oracle. Los tipos de SQL soportados son PostgreSQL, MySQL y SQL Server.

Procedimiento MIGRATE_FILE

Este procedimiento convierte un archivo que contiene sentencias SQL de una base de datos de origen especificada como entrada y convierte las sentencias SQL en Oracle SQL.

Procedimiento ENABLE_TRANSLATION

Este procedimiento permite la traducción de SQL en tiempo real y la ejecución de sentencias SQL que no son de Oracle en una instancia de Autonomous Database. Los tipos de SQL soportados son PostgreSQL, MySQL y SQL Server.

Procedimiento DISABLE_TRANSLATION

Este procedimiento desactiva la traducción del idioma SQL.

MIGRATE_SQL Procedimiento y función

MIGRATE_SQL facilita la conversión de sentencias SQL escritas en SQL que no es de Oracle en SQL de Oracle. Este procedimiento está sobrecargado y tiene variantes de función y procedimiento.

Sintaxis

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;

Parámetros

parámetro Descripción

original_sql

Especifica la sentencia SQL original en la base de datos origen que se debe traducir a Oracle SQL.

Este parámetro es obligatorio.

output_sql

Devuelve la sentencia SQL traducida.

Este parámetro es obligatorio.

source_db

Especifica el nombre de la base de datos origen. Los valores válidos para este parámetro son POSTGRES, MYSQL, SQLSERVER.

Este parámetro es obligatorio.

Valores devueltos

El formato de función de DBMS_CLOUD_MIGRATION.MIGRATE_SQL devuelve CLOB que contiene la versión traducida de Oracle SQL de la entrada ORIGINAL_SQL.

Notas de Uso

Ejemplos

Formulario de procedimiento de DBMS_CLOUD_MIGRATION.MIGRATE_SQL para convertir la sentencia PostgreSQL en 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;        
/

Formato de función de DBMS_CLOUD_MIGRATION.MIGRATE_SQL para convertir la sentencia PostgreSQL en 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);

Procedimiento MIGRATE_FILE

MIGRATE_FILE toma como entrada un archivo que contiene sentencias SQL de una base de datos de origen especificada y convierte las sentencias SQL en Oracle SQL.

Sintaxis

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

Parámetro

parámetro Descripción

credential_name

Nombre de la credencial para acceder a Cloud Object Storage.

Este parámetro es obligatorio.

Opcionalmente, la credencial que utilice para acceder al almacén de objetos en la nube se puede definir mediante la configuración de políticas y roles. Consulte Configuración de Políticas y Roles para Acceder a Recursos para obtener más información.

location_uri

URI del archivo de origen. El formato del URI depende del servicio de Cloud Object Storage que utilice. Para obtener más información, consulte DBMS_CLOUD Formatos de URI.

Este parámetro es obligatorio.

target_uri

URI del archivo de destino, donde se debe almacenar el archivo traducido. Si no proporciona un valor para este parámetro, el archivo traducido se almacena en la misma ubicación que el archivo de origen.

El formato del URI depende del servicio de Cloud Object Storage que utilice. Para obtener más información, consulte DBMS_CLOUD Formatos de URI.

source_db

Especifica el idioma de la base de datos origen. Los valores válidos para este parámetro son POSTGRES, MYSQL, SQLSERVER.

Este parámetro es obligatorio.

params

Especifica los parámetros adicionales que se pueden transferir en formato JSON.

Notas de Uso

  • Para ejecutar DBMS_CLOUD_MIGRATION.MIGRATE_FILE, debe estar conectado como usuario ADMIN o tener el privilegio EXECUTE en DBMS_CLOUD_MIGRATION.

  • El parámetro credential_name especifica la credencial para acceder al URI de almacenamiento de objetos en la nube. El usuario que ejecuta DBMS_CLOUD_MIGRATION.MIGRATE_FILE.must debe tener el privilegio EXECUTE para el objeto de credencial utilizado para acceder al URI de Object Storage. Es decir, la credencial que especifique con el parámetro credential_name.

Ejemplo

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;
/

El parámetro credential_name especifica la credencial para acceder al URI de almacenamiento de objetos en la nube.

location_uri es el URI del archivo de origen. El formato del URI depende del servicio de Cloud Object Storage que utilice. Consulte DBMS_CLOUD URI Formats para obtener más información.

En este ejemplo, namespace-string es el espacio de nombres de almacenamiento de objetos de Oracle Cloud Infrastructure, y bucketname es el nombre del cubo. Consulte Descripción de los espacios de nombres de Object Storage para obtener más información.

Procedimiento ENABLE_TRANSLATION

El procedimiento ENABLE_TRANSLATION permite la traducción de SQL en tiempo real y la ejecución de sentencias SQL que no son de Oracle en Autonomous Database.

Sintaxis

Parámetro

DBMS_CLOUD_MIGRATION.ENABLE_TRANSLATION (
   source_db  IN  VARCHAR2);
parámetro Descripción

source_db

Especifica el idioma de la base de datos origen. Los valores válidos para este parámetro son POSTGRES, MYSQL, SQLSERVER.

Este parámetro es obligatorio.

Nota de Uso

  • Para ejecutar DBMS_CLOUD_MIGRATION.ENABLE_TRANSLATION, debe estar conectado como usuario ADMIN o tener el privilegio EXECUTE en DBMS_CLOUD_MIGRATION.

Ejemplo

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

Procedimiento DISABLE_TRANSLATION

El procedimiento DISABLE_TRANSLATION desactiva la traducción del idioma SQL. Se devuelve un error si la traducción del idioma SQL no está activada para la sesión.

Sintaxis

DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION();

Nota de Uso

  • Para ejecutar DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION, debe estar conectado como usuario ADMIN o tener el privilegio EXECUTE en DBMS_CLOUD_MIGRATION.

Ejemplo

BEGIN
  DBMS_CLOUD_MIGRATION.DISABLE_TRANSLATION();
END;        
/