Transferir datos desde SQL Server / DB2

Quisiera saber cual seria el procedimiento para transferir datos desde SQLServer/Windows a DB2/AS400.
¿La conexión es directa?
¿Necesito aplicaciones adicionales?
Existe un ODBC o OLEDB, ¿de dónde puedo obtenerlo?
Respuesta
1
En este caso pasan dos cosas primero no es directa la conexión necesitas un driver en el servidor de sql para que sea directa con ASP/400 db2 ese driver te lo deben administrar la gente de IBM o los dueños de la aplicación por otro lado se puede hacer otra cosa exportar a archivos planos por medio de dts y subirlos a as400 por medio de alguna herramienta que tenga en as/400 para eso

4 respuestas más de otros expertos

Respuesta
1
Depende si es una transferencia masiva de una sola una vez, o va a ser algo que se repita con frecuencia en el tiempo.
Lo primero habrá que conseguir el driver odbc de sql server y de db2.
Yo conozco el paquete connect en su versión 7 para db2. Pídeselo al DBA de DB2.
Tenemos que hacer un nuevo dsn de equipo a través del driver DB2 a la base de datos DB2 y tablas correspondientes, que previamente el DBA de DB2 habrá modificado en cuanto a permisos y te habrá facilitado usuario y clave para hacer exactamente y sólo lo que necesites hacer en db2, que imagino es hacer INSERTS.
Y hacer otro dsn de equipo con el driver de SQL Server al servidor y base de datos adecuado desde donde extraer los datos. Las mismas consideraciones para el DBA del SQL Server, en este caso imagino que solo se necesitan SELECTS, a lo mejor también DELETES o UPDATES para marcar los registros traspasados.
Una vez disponemos de los dos nuevos dsn
1- Para una migración masiva de datos de una sola vez desde SQL Server a DB2 desde Microsoft Access vinculamos las tablas afectadas de ambas conexiones y realizamos consultas de datos anexados necesarias desde SQL Server hacia DB2.
2- Desde nuestro lenguaje de programación favorito o en su defecto el que exija la empresa habrá que codificar una mini aplicación que recorra todos los registros de sql server y los vaya insertando en db2. Si tuvieses la suerte de todavía utilizar vb6, en unas horas podrías hacer con tecnología ADO y recordsets lo que te comento.
Do Until RsSqlServer.Eof
RsDB2.AddNew
RsDB2("a")=RsSqlServer("b")
...
RsDB2.Update
Loop
En el ejemplo "a" es un nombre de campo en cierta tabla db2 y "b" lo mismo para el sql server.
Respuesta
1
La transferencia es simple en el caso de que dispongas de la herramienta DTS (Data transformation service) que viene incluida dentro de la base de datos SQLServer.
Los requisitos son que tengas los ODBC de SQL y de DB2. El ODBC de SQL se instala junto con la base de datos. El ODBC de AS400 se instala siempre y cuando hayas instalado el Client Access u otra herramienta similar del AS400.
Pienso que si tienes SQL y DB2 no debes tener ningún problema en obtenerlos.
Respuesta
1
Puedes establecer conexión ODBC con las dos bases de datos. A partir de allí tienes un mundo de herramientas. Si tu nivel no es muy alto puedes usar ACCESS.
ACCESS --> Nueva tabla, VINCULAR TABLA por ODBC. Vinculas las de SQL Server y las de DB2. Después puedes montarte consultas de adicción (de agregado) que inserten en DB2 una consulta sobre una tabla de SQL Server.
Creo que es la opción más sencilla sin necesidad de programar "casi" nada.
Suerte y un saludo:
Jorge
Respuesta
1
Tendrías que conectar el servidor de sql server al del AS400 para que puedas exportar de forma directa.
Los ODBC u OLEDB los puedes conseguir de los clientes de acceso de el AS400 o en la página del DB2 de IBM.
Una vez conectado desde el sql server al AS400 puedes indicar en las utilerías de la base de datos que vas a exportar la información y seleccionar el servidor al que van y listo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas