Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-12-2007
jgutti jgutti is offline
Miembro
 
Registrado: may 2003
Posts: 189
Poder: 22
jgutti Va por buen camino
al insert o Update se corrompe la base firerbird

Hola al foro, utilizo firebird + php, al insertar o actulizar registros estos se graban correctamente en la base de datos pero esta se corrompte, el script es el sgte:

Código PHP:
$db=ibase_connect("localhost:/data/e_comer.gdb","user","pas");
if (!
$db) die ("error connecting to database");
$tr=ibase_trans($db,IBASE_COMMITTED,IBASE_REC_VERSION,IBASE_NOWAIT); 
  
$sql ="INSERT INTO pagos_web(EMPRESA,FACTURA,FECHA,monto)
               values(
$emps,$fact,],'".formato_guarda_fecha($f_emi)."',$monto)";
$result ibase_query($_SESSION['tr'],$sql);
   if (!
$resultdatabase_error ("Error al Ingresar el Pago"$_SESSION['tr']);
  
ibase_commit_ret($_SESSION['tr']); 
- ¿que estoy haciendo mal para que se producto este problema?

saludos

jgutti

Última edición por jhonny fecha: 05-12-2007 a las 21:19:40.
Responder Con Cita
  #2  
Antiguo 05-12-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Por favor, utiliza las etiquetas PHP para que tu codigo se vea mejor y especificanos ¿Que quieres decir con que se corrempe la base de datos?, ¿acaso se daña toda la BD?, no creo.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 05-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 18
Gabo Va por buen camino
Es que a quién se le ocurre utilizar una base de datos que no es seria....
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #4  
Antiguo 05-12-2007
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Verifica si pasa esto pq el disco duro no esta OK..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #5  
Antiguo 05-12-2007
jgutti jgutti is offline
Miembro
 
Registrado: may 2003
Posts: 189
Poder: 22
jgutti Va por buen camino
Jhony, la tabla en la cual estoy grabando los registros se corrompe
Código PHP:
$db=ibase_connect("localhost:/data/e_comer.gdb","user","pas");
if (!
$db) die ("error connecting to database");
$tr=ibase_trans($db,IBASE_COMMITTED,IBASE_REC_VERSION,IBASE_NOWAIT); 
$sql ="INSERT INTO pagos_web(EMPRESA,FACTURA,FECHA,monto)
values(
$emps,$fact,],'".formato_guarda_fecha($f_emi)."',$monto)";
$result ibase_query($_SESSION['tr'],$sql);
if (!
$resultdatabase_error ("Error al Ingresar el Pago"$_SESSION['tr']);
ibase_commit_ret($_SESSION['tr']); 
2.- que sorpresa me causo el que firebird no es una base de datos serias, si esto es correcto entonces que base de datos puedo utilizar (interbase 6.0 o superior, que versión de firebird o definitivamente migrar a mysql)
- porque lo de sorpresa, llevo años utilizando interbase 6.0 y nunca he tenido problemas.
3.- el problema puede producirse porque la misma base de datos se utiliza en la red local bajo windows 2003 server con interbase manager y en linux+apache+php con firebird 2.0 en la web

4.- en la red local jamas he tenido problemas
- en linux+apache+php con firebird 2.0 en la web, no he tenido problemas
5.- el problema es al combinar ambas plataformas sobre la misma base de datos

Última edición por jhonny fecha: 05-12-2007 a las 21:19:21.
Responder Con Cita
  #6  
Antiguo 05-12-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
El FireBird si es una base de datos sería, si lees el hilo que cito Gabo entenderas que si lo es...

Recuerda poner las etiquetas PHP, por favor!!!

Editare tu Post para que veas tu codigo en codigo PHP y aprendas a aplicar el asunto...

En cuanto a que se corrompe la tabla o la BD no nos estas diciendo nada, ¿Que es eso de que se corrompe?, ¿Hay algun error?, ¿Como estas tan seguro de que se corrompe?, explicanos eso.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 06-12-2007
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cita:
Empezado por jgutti Ver Mensaje
5.- el problema es al combinar ambas plataformas sobre la misma base de datos
Definitivamente, independientemente de la plataforma, no podes abrir a la vez un archivo desde dos servidores distintos.

Además de eso, al menos hasta la versión 1.5, no era posible utilizar una base de datos creada en windows directamente en linux, ni viceversa. El procedimiento correcto es crear un backup de la base de datos en la plataforma donde fue creada, y restaurar dicho backup, cuyo formato si es transportable, en la otra plataforma.

Cómo he estado acostumbrado a trabajar así, olvidé ya si en fb 2.0 eso cambió.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #8  
Antiguo 06-12-2007
jgutti jgutti is offline
Miembro
 
Registrado: may 2003
Posts: 189
Poder: 22
jgutti Va por buen camino
1.- El error que se produce con una tabla en particular es:
Internal dgs software consistency check (decompression overran buffer (179))

2.- Para evitar utilizar la base en dos plataformas diferentes cual seria la instalación correcta para que la base de datos firebird se utilize en:
- Accesando en forma simultanea en la Red local desde una aplicación delphi y via web accediendo con php.

saludos, jgutti
Responder Con Cita
  #9  
Antiguo 06-12-2007
jgutti jgutti is offline
Miembro
 
Registrado: may 2003
Posts: 189
Poder: 22
jgutti Va por buen camino
correccción el mensaje es:
Internal gds software consistency check (decompression overran buffer (179))
Responder Con Cita
  #10  
Antiguo 06-12-2007
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por jgutti Ver Mensaje
[..]2.- Para evitar utilizar la base en dos plataformas diferentes cual seria la instalación correcta para que la base de datos firebird se utilize en:
- Accesando en forma simultanea en la Red local desde una aplicación delphi y via web accediendo con php.
saludos, jgutti
Un sólo servidor de base de datos , simplemente.

Los usuarios de la red local acceden como es habitual, ejemplo: 192.168.1.1:/home/datos/datosempresa.fdb

Los usuarios de internet acceden al servidor web y este a su vez conecta al servidor de bases de datos igualmente: 192.168.1.1:/home/datos/datosempresa.fdb

Pero todos a un sólo servidor firebird.
Responder Con Cita
  #11  
Antiguo 18-12-2007
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
Resp

No puedo decir de quien sea exactemente el error. Pero creo que el problema es de la libreria de acceso de php. Si mas no recuerdo esta escrita para interbase 6.0. Mira a mi me estaba pasando lo mismo y no se corrompe la base de datos si no que para al servidor(en mi caso). Yo lo solucione. Realizando una conexion persitente y cerrando al finalizar el script y usando un tamaño de gania 2 ala x -1. Parece raro pero asi me paso usaba un taño de 4096 y me daban una cantida increible de peos puse una paginacion de 4095 o menor y me dejo de dar problemas. Ahora decirte cual es problema exacto no lo se.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Hacer un insert o un update en un campo array David Firebird e Interbase 4 27-04-2007 19:14:13
funciones Update e Insert usando libmysql.dll Pook Conexión con bases de datos 3 14-12-2006 21:56:37
Trigger Before (Insert,update,delete)? estebanx MS SQL Server 2 25-05-2006 15:58:19
Problema con Insert y Update en ADOQuery Moises22 SQL 15 11-01-2006 07:57:13
problemas con el insert y el update tiagor64 SQL 5 16-02-2005 17:46:09


La franja horaria es GMT +2. Ahora son las 17:35:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi