Foros del Web » Programando para Internet » PHP »

Mssql + Mysql + As400 + PHP

Estas en el tema de Mssql + Mysql + As400 + PHP en el foro de PHP en Foros del Web. Buenos dias, -->perdonar por el titulo pero no sabia como ponerlo. Lo q tengo q hacer es unificar los datos de SQLserver y as400 con ...
  #1 (permalink)  
Antiguo 05/10/2006, 00:35
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Mssql + Mysql + As400 + PHP

Buenos dias,
-->perdonar por el titulo pero no sabia como ponerlo.

Lo q tengo q hacer es unificar los datos de SQLserver y as400 con mysql, es decir, hacer una conexion a mssql y hacer un volcage de una tabla hacia mysql, y lo mismo con el AS400. las conexiones ODBC hacia mssql y AS400 las tengo echas. Las tablas en mysql tambien estan creadas.
lo q no se como hacer es pasarlo de una base de datos a otra.

aki dejo la conexion con SQLserver y casi lo mismo seria con AS400
Código PHP:
$dsn "SQLServer";
    
$usuario "";
    
$contraseña = "";
    //connexio a l'AS400
    
$dbconect odbc_connect($dsn$usuario$contraseña);
        
if ($dbconect == 0) {
            echo(
"Ha fallado la conexión a la base de datos.");
            
$sqlerror odbc_errormsg($dbconect);
            echo(
$sqlerror);
        }else{ 
            
//$sql="Select * from information_schema.tables"; //Veure les taules
            //$sql="select * from information_schema.columns"; //Veure taules i camps
            
$sql="select * from Personal";
            
$result=odbc_exec($dbconect,$sql)or die(exit("Error en odbc_exec"));
            
odbc_result_all($result); 
    } 
tendria q usar odbc_fetch_array o odbc_fetch_row en un bucle y hacer una conexion a mysql e ir pasando los datos... o como iria la cosa?
El proceso de pasar los datos de SQLserver a MySql y de AS400 a MySql se tendra q hacer cada dia.. por eso busco la mejor manera de hacerlo.

Mq han pedido una aplciacion PHP para unificar un poca algunos resultados...

saludos y gracias
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #2 (permalink)  
Antiguo 05/10/2006, 08:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
tendria q usar odbc_fetch_array o odbc_fetch_row en un bucle y hacer una conexion a mysql e ir pasando los datos... o como iria la cosa?
Si, .. implementa una conexión a Mysql y otra a ODBC con links de conexión independitenes (esto es lo importante):

$odbc=odbc_connect(....);
$mysql=mysql_connect(....);

Y de ahí usas los links de conexión creados en sus funciones respectivas:

msyql_query($sql,$mysql);
ó
obdc_exec($odbc,$sql);

Ya que tomas registros de un resultado en una de tus conexiones y haces "insert" o "update" en otra conexión .. usa un "_fetch_" para obtener tus resultados y recorrerlos uno a uno y en el mismo bucle el "mysql_query() o obdc_exec()" para hacer tu UPDATE o INSERT en la BBDD que corresponda.

Cita:
El proceso de pasar los datos de SQLserver a MySql y de AS400 a MySql se tendra q hacer cada dia.. por eso busco la mejor manera de hacerlo.
Podrías automatizar la ejecución del scritp que vas a crea para tal proceso en un "cron job" (linux) o "programador de tareas" (windows).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 11/01/2007, 09:27
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + PHP

HOla, resurgiendo el tema, tengo un servidor linux, tengo control total sobre el, hasta el momento habia trabajado con windows y para conectarme al sql server lo habia hecho a traves de ODBC consiguiendo el driver q me hacia falta, ahora lo tengo todo en Linux... hay alguna manera de conectar PHP y SqlServer? por via ODBC me hace falta el driver, existe este driver? es gratutito o de pago? hay alguna manera aparte de ODBC de hacer la conexion PHP + SQL Server?
he intentado usar mssql_connection pero no me conecta aun q los datos sean correctos...
EDITADO: El pc donde tengo los datos SQL SERVER tambien esta en la misma Red y tambien tengo acceso a el!

PD->En cuanto al AS400 ya consegui el driver para poder hacer la conexion ODBC!

ando un poco perdido con esto.. a ver si me podeis hechar una mano!

gracias por adelantado,
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 11/01/2007 a las 09:45
  #4 (permalink)  
Antiguo 11/01/2007, 09:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Re: Mssql + Mysql + As400 + PHP

Para usar PHP desde Linux y conectarte a SQL Server en Windows necesitas instalar en tu máquina Linux lo que llaman:

FreeTDS
http://www.freetds.org/

más info:
http://www.php.net/mssql

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 11/01/2007, 10:19
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + Mysql + As400 + PHP

hay algo q no sepas?

Muchas gracias Cluster

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #6 (permalink)  
Antiguo 15/01/2007, 04:42
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + Mysql + As400 + PHP

Hola de nuevo...

instale lo q me digiste, se conecta a la BD, pero con el ODBC_exec me salta este warning:
Warning: odbc_exec(): SQL error: [unixODBC][FreeTDS][SQL Server]Invalid cursor state, SQL state 24000 in SQLExecDirect in /var/www/arcadie/personal/control/actualitzar/personal.php on line 48
y en las linias respectivas hay lo siguiente:
47 .- $str_personal="SELECT CodEmpresa, CodMatricula, CodJerarquia, Nombre, Apellido1, Apellido2 FROM Personal ORDER BY CodMatricula";
48 .-$sql_personal=odbc_exec($dbconect,$str_personal)or die(exit("Error en odbc_exec"));

a ver si me podeis dar una manita con esto

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #7 (permalink)  
Antiguo 15/01/2007, 10:02
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + Mysql + As400 + PHP

Hola
Encontre el error q tenia, en este tipo de conexiones se necesita simpre liberar la memoria o bien cerrar la conexion antes d usar otra.

Odbc_free_result
Odbc_close
Odbc_close_all

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #8 (permalink)  
Antiguo 18/01/2007, 17:32
 
Fecha de Ingreso: enero-2004
Ubicación: Medellin
Mensajes: 178
Antigüedad: 20 años, 3 meses
Puntos: 8
Re: Mssql + Mysql + As400 + PHP

si haces un DTS en sqlserver que te haga lo k tienes k hacer? y por medio de un JOB que se ejecute en un momento especifico.
  #9 (permalink)  
Antiguo 19/01/2007, 06:47
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + Mysql + As400 + PHP

Hola vicman,
Cita:
Iniciado por vicman Ver Mensaje
si haces un DTS en sqlserver que te haga lo k tienes k hacer? y por medio de un JOB que se ejecute en un momento especifico.
no ser q has querido decir... podrias explicarme un poco mejor esa idea!

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #10 (permalink)  
Antiguo 19/01/2007, 07:57
 
Fecha de Ingreso: enero-2004
Ubicación: Medellin
Mensajes: 178
Antigüedad: 20 años, 3 meses
Puntos: 8
Re: Mssql + Mysql + As400 + PHP

vos con un DTS puedes compartir informacion con diferentes fuentes de datos.
me imagino que tienes el "client access" en la makina donde esta la base de datos MSSQL.

Lo primero que tienes que hacer es abrir la opcion DTS o "Servicio de transformacion de datos" en MSSQ, luego creas una nueva coneccion a AS400 y MySQL.
Vos puedes pasar datos basado en una consulta y homologas los datos de respuesta de la condulta con los datos de llegada a la nueva BD.

Para que este proceso se jecute diario, en el SQL puedes crear un Job que automaticamente ejecute esa tarea cada cieto tyiempo que le digas.

Teniendo eso, no creo k sea necesario hacer nada en PHP.
  #11 (permalink)  
Antiguo 19/02/2007, 15:14
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Exclamación Re: Mssql + PHP

Saludos .

quisiera que me ayuden, necesito conectarme al as400 desde una aplicacion web echa en php, para ello estoy utilizando ODBC, pero no puedo, me arroja el siguiente error :

Warning: odbc_connect() [function.odbc-connect]: SQL error: [IBM][Client Access ODBC Driver (32-bit)][DB2/400 SQL]Communication link failure. COMM RC=0x5, SQL state 08S01 in SQLConnect in C:\Archivos de programa\xampp\htdocs\paac\paginas\consultasql.php on line 17
Ya ocurrido un error tratando de conectarse con el origen de datos.

la funcion que uso es la siguiente:
function conexionAS400($user,$pass)
{
$dsn="petrosa1";
$link = odbc_connect($dsn,$user,$pass);
if (!$link)
{ exit("Ya ocurrido un error tratando de conectarse con el origen de datos."); }
return $link;

}

saben de q se trata, hay q configurar algo ?????
  #12 (permalink)  
Antiguo 20/02/2007, 01:35
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Mssql + Mysql + As400 + PHP

Hola,
cuando creas la conexion ODBC con windows (en tu caso llamada petrosa1), te da algun error?
el user y la password de la funcion te llegan bien?

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #13 (permalink)  
Antiguo 20/02/2007, 08:07
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Mssql + Mysql + As400 + PHP

Hola,
No, no me da ningun error, he verificado el user y password y me llegan correctamente.

Saludos.
  #14 (permalink)  
Antiguo 20/02/2007, 08:22
 
Fecha de Ingreso: febrero-2007
Mensajes: 6
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Mssql + Mysql + As400 + PHP

Holas.
Ademas uso el mismo obdc (petrosa1) en una aplicacion en fox, y funciona perfectamente, el problema ocurre cuando lo intento desde php.

Saludos y gracias anticipadamente por su ayuda.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:03.