Campo Blob

16/09/2004

0

Sempre utilizo campo Blob para imagens mas não sei qual o tamanho do
campo (size) na hora de configurar . eu uso 80 .

?Qual seria a capacidade de armazenar uma figura no Blob com (80)de tamanho?


Minuto

Minuto

Responder

Posts

16/09/2004

Vinicius2k

Colega,

Qual o banco de dados?
Se for Firebird, um BLOB não tem tamanho, tem limites... veja :
[quote:501e3f57cc=´Documentação´]O tamanho máximo de um Blob dependerá do tamanho de página de uma Base de Dados. Assim:
1Kb de tamanho de página à 64Mb
2Kb de tamanho de página a 512Mb
4Kb de tamanho de página a 4Gb
8Kb de tamanho de página a 32 Gb
O tamanho máximo de um segmento de um Blob é de 64Kb. [/quote:501e3f57cc]

Veja também este texto :
O tipo de Dado BLOB, tem o tamanho variável, isto é, não sabemos na hora da criação do campo BLOB qual será o seu tamanho realmente, mas, o limite do campo Blob que está na documentação do Firebird, é de 64k por segmento. Este tipo de campo é o tipo indicado para armazenar Textos Grandes “Memos”, Fotos, Gráficos, Ícones, isto é, aparentemente não tem um tipo de dado que não possa ser armazenado no Campo Blob. Campos Blob´s não podem ser indexados. Saber qual o sub-tipo correto utilizar é essencial para criar aplicativos que se utilizem dos campos BLOBs. Os BLOBs se apresentam em 3 versões : Sub-tipo 0 - Armazena dados em formato binário – Fotos, etc. Sub-tipo 1 - Armazena dados em formato texto – Memos. Sub-tipos definidos pelo usuário. Além dos 2 Sub-tipos pré-definidos, também existem os Sub-tipos definidos pelo usuário. Esses tipos são determinados com o uso de valores negativos logo após a palavra SUB_TYPE. O número utilizado é um inteiro determinado arbitrariamente pelo usuário de acordo com sua preferência, desde que seja negativo. O uso de -1 é funcionalmente equivalente ao uso de -2, -3,etc. A única consideração que deve ser tomada é a de se certificar de sempre armazenar o tipo pré-determinado de informação no respectivo sub-tipo de BLOB. O Firebird não faz nenhuma análise dos dados que estão sendo gravados, portanto essa é uma responsabilidade do aplicativo. Nenhum erro será retornado pelo Firebird se um tipo errado de dado for inserido em um BLOB de sub-tipo incorreto, mas um aplicativo pode ser prejudicado se ao recuperar as informações do BLOB, a mesma não corresponder ao formato esperado. Sintaxe : Estas declarações é na criação da tabela : MEMO BLOB SUB_TYPE 1; FOTO BLOB SUB_TYPE 0; CREATE TABLE FUNCIONARIOS ( ID INTEGER NOT NULL PRIMARY KEY, NOME VARCHAR(50) NOT NULL, ...., FOTO BLOB SUB_TYPE 0, EXPERIENCIA BLOB SUB_TYPE 1 SEGMENT SIZE 80, ) Na criação da tabela acima, você verificou uma nova informação “SEGMENT”. Abaixo a explicação : O tamanho de segmento (Segment Size), é um pequeno pedaço de informação, tipo um conselho, que é mantido com a definição de um Blob. Quando se abre um Blob, pode-se perguntar por segmentos de qualquer tamanho, mas para alguns Blobs um determinado tamanho é mais conveniente que um outro. Blobs que armazenam texto, por exemplo, freqüentemente utilizam segmentos de tamanho 80. O préprocessador e outros programas utilitários usam o tamanho do segmento para determinar o tamanho de buffers que são necessários para transferência de dados para e do Blob.


Espero ter ajudado...
T+


Responder

16/09/2004

Minuto

[color=red:443fdbebef]Na criação da tabela acima, você verificou uma nova informação “SEGMENT”. Abaixo a explicação :
O tamanho de segmento (Segment Size), é um pequeno pedaço de informação, tipo um conselho, que é mantido com a definição de um Blob. Quando se abre um Blob, pode-se perguntar por segmentos de qualquer tamanho, mas para alguns Blobs um determinado tamanho é mais conveniente que um outro. Blobs que armazenam texto, por exemplo, freqüentemente utilizam segmentos de tamanho 80. O préprocessador e outros programas utilitários usam o tamanho do segmento para determinar o tamanho de buffers que são necessários para transferência de dados para e do Blob. [/color:443fdbebef]

Pelo que entendi segmento de tamanho 80 é muito utilizados para texto.

posso usar o mesmo tamanho para fotos?

e vc Vinicius quando cria um campo blob no firebird usa que tamanho? (se usa)


Responder

16/09/2004

Vinicius2k

Pelo que entendi segmento de tamanho 80 é muito utilizados para texto.

Sim. Mas, até onde eu sei, é apenas uma convenção... Vc utilizar um segmento de tamanho 80, pode facilitar a troca de informações entre o seu banco e uma aplicação que busque esta informação no campo... para ter um aproveitamento real disto, vc teria que preparar sua aplicação para fazer esta leitura e isto eu, honestamente, não sei como fazer...

posso usar o mesmo tamanho para fotos?

Creio que sim, mas faria sentido? Não sei... teria que pesquisar mais sobre o assunto...

e vc Vinicius quando cria um campo blob no firebird usa que tamanho? (se usa)

Eu só uso Blobs para imagens e apenas quando realmente necessário, já que fazem crescer, consideravelmente, o tamanho da base... e eu não uso nenhuma informação de tamanho de segmento...

T+


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar