4D v14

BLOBs

Página Inicial

 
4D v14
BLOBs

BLOBs    


 

 

Além das manipulações explicadas no vídeo, também deve ter em conta o seguinte:

No início, nós fazemos sempre as mesmas perguntas:

  • Como me pode servir e em quais circunstâncias?
  • Colocar a informação é muito fácil, mas como e em qual ordem será?

Vamos começar por abordar a segunda pergunta:

Enquanto você pode acessar qualquer byte do BLOB, na maioria dos casos nós usaremos o que chamamos de FIFO (First In First Out). Isso significa que você recupera o conteúdo do BLOB na ordem em que você o colocou. Para fazer uma simples analogia, vamos dar uma prateleira onde você armazena os livros da esquerda para a direita. Comece por colocar um pequeno livro à esquerda e, em seguida, um grande livro junto ao primeiro e, em seguida, outro grande livro e depois uma foto da sua sogra e uma bijuteria de suas últimas férias, etc. Quando chega a hora de tirar a poeira da prateleira, você não pensa em quantas polegadas do lado esquerdo se encontra um livro. Você o toma na ordem em que estão e ajusta seu olhar (e mãos), dependendo do tamanho do último objeto selecionado.

É o mesmo em um BLOB, especialmente porque você sabe o que você salvou no BLOB.

Por exemplo, quando coloca:

  • um inteiro, é de 2 bytes
  • um inteiro longo é de 4 bytes
  • embora uma data é de 6 bytes
  • ...
  • Para o texto, é indicado como deseja que seja guardado e como é expressada a longitude do texto (cadeia C, cadeia Pascal, etc.).

Retornando à leitura, você vai tomar a informação na mesma ordem novamente e guarde-a nas variáveis para adaptar o conteúdo esperado (digitado corretamente).

Desta forma o BLOB é lido de forma consistente.
Aqui está a resposta à primeira pergunta (qual é o propósito de um BLOB?) Você pode usar um BLOB, por exemplo, nos seguintes casos:

  • Para guardar variáveis, listas hierárquicas, arrays
  • Para o intercâmbio de documentos entre o cliente e o servidor
  • Para proteger dados confidenciais em um BLOB criptografado
  • Para guardar as variáveis que contém plug-ins
  • Para enviar imagens, textos ou documentos em um navegador web
  • Para comunicar-se com um serviço web.

O comando VARIABLE TO BLOB guarda os dados em um formato interno 4D. É por isso que o espaço necessário é um pouco maior que o tamanho de dados bruto.A vantagem desse comando é que ele evita ter que gerenciar o Byte Swapping (posição do byte mais significativo) quando é trabalhado em várias plataformas.

Quando preenche um BLOB, pode usar o caractere de * em vez da variável $PositionInBlob que usamos.

Quando este parâmetro é usado, 4D entende que você deve armazenar a variável no final do BLOB e aumentar assim o seu tamanho.

Agora imagine que você tem uma série de parâmetros no seu banco de dados que devem ser levados em conta para cada usuário (ou cada site onde o aplicativo está instalado):

  • a tela de inicio
  • a cor de fundo
  • a fonte e o tamanho dos caracteres
  • e assim sucessivamente.
    Eles são as preferências do usuário.

Para mantê-los, existem várias soluções (criar uma tabela, um texto de arquivo, um arquivo XML, etc.).

No nosso caso, queremos manter essas preferências em um BLOB, que é armazenado em um arquivo no disco rígido.

Os comandos de escritura e de leitura dos BLOBs são BLOB TO DOCUMENT e DOCUMENT TO BLOB.

Para economizar espaço e/ou tempo de transferência, é possível considerar a possibilidade de comprimir seus BLOBs.

Lembre-se que 4D apenas comprime BLOBs se seu tamanho é maior que 255 bytes.

Para extrair BLOBs, lembre-se de verificar para ver se o BLOB realmente está compactado. Caso contrário, se tenta descompactá-lo irá gerar um erro.

 
 

 
PROPRIEDADES 

Produto: 4D
Tema: BLOBs

 
ARTICLE USAGE

Autoformação ( 4D v13)
Autoformação ( 4D v14)