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 26-10-2010
DamianG DamianG is offline
Miembro
 
Registrado: mar 2008
Posts: 95
Poder: 17
DamianG Va por buen camino
Firebird y campos BLOB

Hola a todos, tengo algunas tablas en mi base datos con algunos campos del tipo BLOB, por ej. tengo una tabla llamada CLIENTES donde un solo campo esta denominado OBSERV del tipo BLOB y ahi guardo anotaciones...

Este tipo de datos pueden corromper la tabla? pregunto esto porque me paso que en un cliente les daba el mensaje "Internal gds software consistency check" y tuve que repararla para poder sacar la informacion y perdi un par de tablas, no la de clientes, pero mientras queria hacer el gbak despues de haber hecho un gfix .. me decia "blob not found"...

Y por último si no uso blob para guardar textos, que tipo de datos recomiendan para esto? no me ha quedado muy claro cuantos caracteres guardar en varchar.

Gracias!
Responder Con Cita
  #2  
Antiguo 26-10-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Depende de la versión de firebird, pero en cualquier caso son miles de caracteres.
Evidentemente los campos blob, ni de ningún tipo, no pueden estropear una tabla.
Se te ha estropeado la base de datos y ha "pillado" esa tabla, por casualidad. Aunque es bien difícil que se estropee una BD firebird.
Responder Con Cita
  #3  
Antiguo 26-10-2010
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Yo guardo notas en la tabla de clientes, en la de pedido, albaran, factura, en cada una de sus linea...
Los campos blob no estropean la base de datos.
Lo que estropea la base de datos es:
- copiarla mientras un cliente la tiene abierta (hacer backups de esta manera es muuuy malo)
- en Windows deshabilitar el "forced write". Si se cae el servidor, estás frito!
- que un cliente se conecte a la base mientras haces un restrore
Responder Con Cita
  #4  
Antiguo 26-10-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por duilioisola Ver Mensaje
Lo que estropea la base de datos es:
- copiarla mientras un cliente la tiene abierta (hacer backups de esta manera es muuuy malo)
No afecta para nada si se está haciendo mediante gbak. Lo que sí la estropeará con casi total seguridad es si la copias->pegas (por ejemplo) con gente conectada a ella.
Responder Con Cita
  #5  
Antiguo 26-10-2010
DamianG DamianG is offline
Miembro
 
Registrado: mar 2008
Posts: 95
Poder: 17
DamianG Va por buen camino
O sea que con un simple xcopy del archivo fdb o copiar y pegar a travez del explorador mientras estan trabajando la puedo romper ???. Hace rato que hago eso!!! no justamente en este caso...
Responder Con Cita
  #6  
Antiguo 27-10-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por DamianG Ver Mensaje
O sea que con un simple xcopy del archivo fdb o copiar y pegar a travez del explorador mientras estan trabajando la puedo romper ???. Hace rato que hago eso!!! no justamente en este caso...
Por supuesto, está abierta y se están grabando datos.

Sin embargo, si usas gbak, éste lo hace en una transacción que no afecta al resto de conexiones.
Responder Con Cita
  #7  
Antiguo 27-10-2010
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
De la Web de Firebird:

Como corromper una base de datos en la web de Firebird.

Respaldo (Backup)
Lee sobre todo el primer aviso
Cita:
Aviso
No use utilidades externas de respaldo propietarias o herramientas de copia de archivos tales como WinZip, tar, copy, xcopy, etc., en una base de datos que esté en uso. No sólo el respaldo será poco confiable, también el bloqueo a nivel de disco usado por estas herramientas puede corromper una base de datos en marcha.
Responder Con Cita
  #8  
Antiguo 02-11-2010
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Lo que estropea la base de datos es:
- copiarla mientras un cliente la tiene abierta (hacer backups de esta manera es muuuy malo)
Hacer el backup no afecta en nada a la BD. Ya q se hace de un snapshot de la BD al comenzar el backup..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #9  
Antiguo 02-11-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Delfino Ver Mensaje
Hacer el backup no afecta en nada a la BD. Ya q se hace de un snapshot de la BD al comenzar el backup..
Siempre y cuando se use una utilidad como gbak o alguna herramienta similar.
Responder Con Cita
  #10  
Antiguo 27-04-2011
DamianG DamianG is offline
Miembro
 
Registrado: mar 2008
Posts: 95
Poder: 17
DamianG Va por buen camino
problemita

Retomo este hilo, me pasa que al leer los datos de la tabla de un campo BLOB, me salen caracteres ilegibles,

por ej. en la nota tengo 'cobrar mesa que esta pendiente'

si pongo xxx := datafb.query1.fieldbyname('observ').asstring me devuelve solo una 'c ' y si pongo

xxx:= datafb.query1.fieldbyname('observ').value me lo devuelve bien 'cobrar mesa que esta pendiente'...

ahora podria usar el .value pero me pasa que con los datos nuevos que agrego, en las altas despues con el .value tambien los lee mal y aparecen simbolos chinos........

si pueden ayudarme les agradezco!!

saludos!
Responder Con Cita
  #11  
Antiguo 05-05-2011
arrayman arrayman is offline
Miembro
 
Registrado: abr 2006
Posts: 55
Poder: 19
arrayman Va por buen camino
hola yo no se mucho de esto pero como veo que a pasado una semana te voy a decir que puedes intentar.

prueba que no estes usando un juego de caracteres incorrecto.
prueba ha hacer una copia con gback y a restaurarla en el servidor
de produccion, quiza has cambiado la version de firebird. hacia adelante
no deberia importar crea que mantiene compatibilidad atras pero si disminuyes de version quizas el osd o ods o algo asi. la estructura del
archivo fdb puede no ser la correcta.
no se si dispones de alguna herramienta que te permita introducir
texto en un campo blob pero puedes probar a ver si tambien te pasa
con mas programas cliente. en fin son cosas que no deben hacerte daño
y es posible que o lo resulvan o te arrojen algo de luz
y sobre todo si lo solucionas dinos como y todos aprenderemos.

un saludo y suerte.
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
DB firebird meter y sacar texto e imagenes a campos blob , con delphi JXJ Firebird e Interbase 1 11-10-2010 11:52:34
campos blob erickperez6 Firebird e Interbase 4 14-04-2010 11:51:35
Ayuda con campos Blob en Firebird angelholberg Gráficos 1 31-03-2008 17:54:37
Campos Blob Huer Varios 1 11-06-2003 10:39:06
Campos Blob Kafu Firebird e Interbase 2 08-05-2003 18:07:54


La franja horaria es GMT +2. Ahora son las 13:20:46.


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