Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/05/2015, 08:40
MALBOTO22
 
Fecha de Ingreso: mayo-2015
Mensajes: 2
Antigüedad: 9 años, 7 meses
Puntos: 0
ibase_query() [function.ibase-query]: Dynamic SQL Error SQL error code = -104 Token

Buenos dias, muy comedidamente solicito su colaboración para tratar de dar solución a este problema, la verdad es que llevo más de una semana tratando de dar solución, he consultado varias paginas y foros, pero nada que doy con la solución.

El caso es el siguiente: Deseo pasar una información de una tabla en DBF a otra tabla en FIREBIRD, pero no permite hacer la respectiva grabación de los datos. Se pueden visualizar desde la tabla DBF pero no permite la grabación en la tabla FIREBIRD.

Uso: S.O. Windows 7, Appserver 2.5, Firebird 2.5

Código:
<?php
    


        $Conexion_DB    = ibase_pconnect('C:\FIREBIRD\BASES\IMPPDF.FDB','SYSDBA','masterkey');
        $Transaccion = ibase_trans("IBASE_WRITE", $Conexion_DB);
        $Comando      = 'DELETE FROM CUENTAS WHERE CODIGO > 0;';
        $nResultado   = ibase_query($Transaccion, $Comando);
        ibase_commit($Transaccion);
        ibase_close($Conexion_DB);


    echo ">>>>> PROCESO DE BORRADO TERMINADO". "<br />";
    echo ">>>>> ESTAMOS REALIZANDO MIGRACION DE DBF A FIREBIRD". "<br />";

    $Conexion_DB    = ibase_pconnect('C:\FIREBIRD\BASES\IMPPDF.FDB','SYSDBA','masterkey');
    $Transaccion = ibase_trans("IBASE_WRITE", $Conexion_DB);
    $Comando      ='insert into cuentas (codigo,nombre,cedula,direccion,perifact,barrio) values ('."$cod  _usu".','."$nom_usu".','."$ced_usu".','."$dir_usu".','."$per_fac".','."$bar_usu".');';
    
    $db = dbase_open('c:\windows\media\lec\factur2.dbf', 0);  //PERMITE LA CONEXION CON LA TABLA DESEADA
    if ($db) 
    {
      $numero_registros = dbase_numrecords($db);  //DETERMINA EL NUMERO DE REGISTROS DE LA TABLA
      for ($i = 1; $i <= $numero_registros; $i++) 
        {
        $temp = dbase_get_record($db, $i); // procesar cada uno de los registros
        $cod_usu=$temp[0];   //ALMACENA EL CONTENIDO DE UN CAMPO EN UNA VARIABLE
        $nom_usu=$temp[1];
        $ced_usu=$temp[2];
        $dir_usu=$temp[3];
        $per_fac=$temp[5];
        $bar_usu=$temp[18];
        echo $cod_usu."\t";
        echo $nom_usu."\t";
        echo $ced_usu. "<br />";

        $nResultado   = ibase_query($Transaccion, $Comando);
        echo ">>>>> PROCESO DE INSERCION EXITOSO <<<<<". "<br />" ;
      }
      ibase_commit($Transaccion);
      ibase_close($Conexion_DB);
    }

?>
pero me genera el siguiente error (Resalto en rojo las lineas a las que me esta direccionando el error)

Código:
>>>>> PROCESO DE BORRADO TERMINADO
>>>>>  ESTAMOS REALIZANDO MIGRACION DE DBF A FIREBIRD
2 ANGELICA MARIA PORRAS  SALAZAR 1098615598

Warning: ibase_query() [function.ibase-query]: Dynamic SQL Error SQL  error code = -104 Token unknown - line 1, column 78 , in  C:\AppServ\www\sidutec\impresion.php on line  44
>>>>> PROCESO DE INSERCION EXITOSO  <<<<<
3 SANDRA MILENA RIA�O CELIS  63531217

Warning: ibase_query() [function.ibase-query]: Dynamic SQL Error SQL  error code = -104 Token unknown - line 1, column 78 , in  C:\AppServ\www\sidutec\impresion.php on line  44
>>>>> PROCESO DE INSERCION EXITOSO  <<<<<
4 LEIDY CAROLINA NARANJO SOLANO 63453717
Doy claridad que el PHP y el FIREBIRD si funcionan adecuadamente, he realizado pruebas con ejemplos y me permite insertar y consultar registros.

Agradezco la colaboración u orientación que me puedan brindar

Última edición por MALBOTO22; 04/05/2015 a las 15:42