Altova MapForce 2024 Enterprise Edition

Sitio web de Altova: _ic_link Asignación de datos de BD

 

MapForce le permite usar bases de datos como origen o destino de datos.

 

Las bases de datos compatibles y sus objetos raíz aparecen a continuación. Si usa la versión de 64 bits de MapForce, compruebe que tiene acceso a los controladores de BD de 64 bits de la BD a la que quiere conectarse.

 

Base de datos

Observaciones

Apache CouchDB 3.x

Base de datos NoSQL. Para más detalles consulte la documentación de CouchDB. Para saber cómo funcionan las bases de datos NoSQL en MapForce consulte bases de datos NoSQL.

Firebird 2.x, 3.x, 4.x


IBM DB2 8.x, 9.x, 10.x, 11.x


IBM Db2 for i 6.x, 7.4, 7.5

Los archivos lógicos son compatibles y se muestran en vistas.

IBM Informix 11.70 y superior

Informix es compatible con conexiones vía ADO, JDBC y ODBC. La implementación no es compatible con tipos de datos de objetos de gran dimensión en cualquiera de los idiomas de generación del código. MapForce generará un mensaje de error (durante el proceso de generación del código) si se usa cualquiera de este tipo de datos.

MariaDB 10 y superior

MariaDB es compatible con conexiones nativas. No se precisan controladores separados.

Microsoft Access 2003 y superior

En el momento de escribir esta documentación (principios de septiembre de 2019) no hay ningún Microsoft Access Runtime disponible para Access 2019. Solo puede conectarse a la BD de Access 2019 con productos de Altova si tiene instalado Microsoft Access 2016 Runtime y solamente si la BD no usa el tipo de datos "Large Number" (número grande).

Microsoft Azure SQL Database

SQL Server 2016 codebase

Microsoft SQL Server 2005 y superior

Microsoft SQL Server para Linux


MongoDB 4.x

Base de datos NoSQL. Para más detalles consulte la documentación de MongoDB. Para averiguar cómo funcionan las bases de datos NoSQL en MapForce, consulte Bases de datos NoSQL.

MySQL 5 y superior

MySQL 5.7 y versiones superiores son compatibles con conexiones nativas. No se precisan controladores separados.

Oracle 9i y superior


PostgreSQL 8 y superior

Son compatibles todas las conexiones PostgreSQL, tanto nativas como basadas en controladores, a través de interfaces como ODBC o JDBC. Las conexiones nativas no necesitan controladores.

Progress OpenEdge 11.6

 

SQLite 3.x

 

Las conexiones SQLite son conexiones nativas y directas compatibles con el archivo de base de datos de SQLite. No se precisan controladores separados.

Sybase ASE 15, 16


Teradata 16

Son compatibles las conexiones vía ADO.NET, JDBC y ODBC.

 

Cuando una asignación inserta datos en una tabla de BD, los campos de identidad generados por la base de datos no son compatibles.

 

Asignaciones de BD en distintos entornos de ejecución

Al generar código de programa a partir de una asignación, compilar una asignación en archivos de ejecución de MapForce Server o implementar una asignación en FlowForce Server, los detalles de la conexión de BD que se guardan con los archivos generados y están adaptados a los controladores compatibles para el entorno de destino elegido (ver siguiente tabla). Por ejemplo, si el lenguaje de transformación es Java, las conexiones ADO se convierten en JDBC al generar código a partir de la asignación.

 

Si ejecuta la asignación en un entorno distinto a MapForce deberá asegurarse de que los detalles de la conexión de BD son los correctos para el equipo en el que se va a ejecutar la asignación (p.ej. podría ser necesario comprobar si el controlador de BD correspondiente está instalado, si la ruta de acceso a la BD es correcta, si se puede acceder al servidor de BD, etc.).

 

Algunos tipos de conexión de BD no se admiten en ciertos entornos de destino, como mostramos en la siguiente tabla.

 

Tipo de conexión/Entorno de ejecución

C#

C++

Java

MapForce Server en Windows

MapForce Server en Linux/Mac

ADO

puente ADO

Como está

Transformada en JDBC

Como está

Transformada en JDBC

ADO.NET

Como está

Definida por el usuario

Transformada en JDBC

Como está

Transformada en JDBC

JDBC

Definida por el usuario

Definida por el usuario

Como está

Como está

Como está

ODBC

puente ODBC

puente ODBC

Transformada en JDBC

Como está

Transformada en JDBC

Native PostgreSQL

No es compatible

No es compatible

No es compatible

Como está

Como está

Native SQLite

No es compatible

No es compatible

No es compatible

Como está

Como está

 

Leyenda de la tabla:

 

Como está significa que el tipo de conexión de la BD (p.ej., JDBC) es la que defina MapForce.

Transformada en JDBC significa que la conexión de BD se transformará en una URL de conexión de BD similar a la JDBC.

Puente ADO y puente ODBC significa que la cadena de la conexión permanece como la haya definido MapForce, pero el código generado usará una clase adecuada que actúe como puente ADO u ODBC según corresponda (p.ej. System.Data.OleDb.OleDbConnection o System.Data.Odbc.OdbcConnection).

Definida por el usuario significa que, para que la conexión funcione en el código generado, necesitará introducir manualmente los detalles de la conexión en el cuadro de diálogo Configurar componentes de BD.

 

 

Prevención de posibles problemas con las conexiones JDBC en entorno Java

Si la asignación se conecta a una base de datos por JDBC, compruebe que el controlador JDBC que utiliza la asignación está instalado en el sistema. Para ver la configuración JDBC actual de cualquier componente de BD en MapForce, haga doble clic en el encabezado del componente de BD. Esto abrirá el cuadro de diálogo Configuración del componente. Para más información consulte los apartados Configuración de componentes de base de datos y Crear una conexión JDBC.

 

Si la asignación utiliza una conexión de base de datos no JDBC, esta conexión puede convertirse a JDBC durante la generación del código Java y así proporcionar compatibilidad en un entorno Java. Para más detalles consulte la tabla anterior.

 

Si ejecuta la aplicación Java que ha generado, puede que tenga que añadir el controlador JDBC como entrada classpath en la configuración actual. Si no lo hace, la ejecución de la aplicación podría resultar en un error similar a este: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver.

 

En este subapartado explicamos algunos de los posibles métodos para solucionar problemas relacionados con JDBC.

 

 

Método 1: Añadir el controlador JDBC como dependencia en Eclipse

Si trabaja con el complemento Eclipse, deberá añadir un controlador JDBC como dependencia. Para ello, siga estos pasos:

 

1.Genere código Java en MapForce e importe el proyecto a Eclipse, tal y como se describe en el apartado Generar, compilar y ejecutar código.

2.Haga clic en la configuración deseada en Eclipse (p.ej. MappingApplication).

3.En la pestaña Dependencias haga clic en Entradas classpath y después en Añadir JARs externas.

4.Busque el archivo .jar en su controlador JDBC (p.ej. C:\jdbc\mysql\mysql-connector-java-5.1.16-bin.jar).

5.Haga clic en Ejecutar para ejecutar el programa con el controlador JDBC de BD añadido como dependencia.

 

 

Método 2: Añadir el controlador JDBC a la classpath de la tarea de prueba en build.xml

Si aparece un mensaje de error relacionado al controlador JDBC al ejecutar el archivo de Ant build.xml, añada el controlador JDBC a la classpath de la tarea test en el archivo build.xml. El fragmento de código que se ve a continuación es un ejemplo de una tarea test de Ant que incluye una referencia al archivo .jar del controlador JDBC (resaltado en amarillo más abajo).

 

<target name="test" depends="compile">
  <java classpath="C:\codegen\java\mysql_mapping" classname="com.mapforce.MappingConsole" fork="true" failonerror="true">
     <classpath>
        <pathelement path="${classpath}"/>
        <pathelement location="C:\jdbc\mysql\mysql-connector-java-5.1.16-bin.jar"/>
     </classpath>
     <arg line="${cmdline}"/>
  </java>
</target>

 

 

Método 3: Incluir el controlador JDBC en el manifiesto de la aplicación

Si construye archivos JAR a partir de la aplicación Java generada, tendrá que añadir una referencia al controlador de la BD en la sección manifiesto del archivo build.xml. Esto garantiza que la referencia al controlador de BD está disponible en el archivo del manifiesto (MANIFEST.MF) una vez haya creado el proyecto.

 

Para añadir la referencia de BD al archivo del manifiesto, siga estos pasos:

 

1.Localice el elemento manifest en el archivo build.xml.

2.Añada un elemento nuevo llamado attribute donde el atributo name sea Class-Path y el atributo value sea el nombre del archivo .jar. Por ejemplo, para MySQL 5.1.16, el archivo manifest actualizado podría tener el siguiente aspecto (observe la línea resaltada en amarillo):

 

<manifest file="C:\codegen\java\mysql_mapping/META-INF/MANIFEST.MF" mode="replace">
  <attribute name="Created-By" value="MapForce 2024"/>
  <attribute name="Main-Class" value="com.mapforce.MappingConsole"/>
  <attribute name="Class-Path" value="mysql-connector-java-5.1.16-bin.jar"/>
</manifest>

 

3.Copie el archivo JAR del controlador JDBC a la carpeta que contenga el archivo JAR de la aplicación generada.

 

© 2018-2024 Altova GmbH