Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   campos blob (https://www.clubdelphi.com/foros/showthread.php?t=66892)

erickperez6 17-03-2010 18:12:48

campos blob
 
Estoy interesado en crear una unica tabla para almacenar todos los campos tipo blob que pueda requerir la aplicacion que estoy creando.

Mi pregunta es sobre el tipo de sub_type y segment_size que debo usar, ya que por lo poco que conosco del tema, el sub_type y segment_size son seteados dependiendo del tipo de informacion que se almacenara, pero en mi caso puede ser cualquier tipo de archivo (pdf, imagenes, documentos, etc)

Tambien he visto varios ejemplos de creacion de campos blob pero veo que no siempre coinciden las especificaciones del sub_type o segment_size pero a la final es para almacenar el mismo tipo de informacion, y funcionan igual, :confused:

Asumo que debe de existir un factor de redimiento en la base de datos con respecto a la relacion de sub_type - segment_size - Tipo de informacion a almacenar, pero lo desconosco

Casimiro Notevi 17-03-2010 18:21:32

Nunca me ha preocupado el "segment size", dejo que el sistema use el que tenga predeterminado.

Para almacenar imágenes, documentos, etc. el sub_type 0
y para almacenar texto el 1 o 'text', es lo mismo

create domain domImagen blob sub_type 0;
create domain domObservaciones blob sub_type text;

erickperez6 17-03-2010 18:50:07

gracias, me ha sido de mucha ayuda :)

Casimiro Notevi 17-03-2010 19:40:25

Se me olvidó comentar un detalle, el tamaño de página de la base de datos limita el tamaño del campo blob:

Cita:

1 Kb -> 64 Mb
2 Kb -> 512 Mb
4 Kb -> 4 Gb
8 Kb -> 32 Gb
16 Kb -> no sé, muy grande :D
Yo siempre uso 8 Kb de tamaño de página, cantidades inferiores pueden causar un rendimiento menor a la base de datos.

Cita:

create database "/mnt/datos/cc-empresa.fdb"
PAGE_SIZE 8192 user "SYSDBA" password "masterkey";
Aquí tienes un documento pdf que trata el tema de los blob, está escrito por Paul Beach de IBPhoenix, no es muy moderno, pero básicamente no ha cambiado mucho, salvo que en las últimas versiones de firebird se puede acceder a los campos blob como si fuesen varchar enormes.

Delfino 14-04-2010 11:51:35

Cita:

Yo siempre uso 8 Kb de tamaño de página, cantidades inferiores pueden causar un rendimiento menor a la base de datos.
Me paso a mi q al meter 8k como page size a menudo se demoraba mucho en entrar a una pantalla q tiene dos tablas relacionadas en master-detail, lo cambie al 4k y ..corregido. Esto me paso bajo Windows..


La franja horaria es GMT +2. Ahora son las 17:33:47.

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