| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
Lippi Membro Junior

Registrado: Terça-Feira, 25 de Novembro de 2008 Mensagens: 378
|
Enviada: Qua Dez 28, 2011 10:04 pm Assunto: Campo para descrição de ocorrências. |
|
|
Senhores do Delphi, boa noite.
Trabalho com o D7, FireBird 2,5 e QReport (relatórios).
Preciso inserir um campo em uma Tabela em que eu possa descrever as ocorrências contratutais - não se trata de dados específicos, mas, sim, de breves relatos.
Exemplo:
Em tal data houve alteração contratual do objeto social, passando para comércio varejista de produtos alimentícios (coisas do tipo).
Ocorre que em algumas dessas ocorrências necessita-se de uma campo que caiba quatro vezes o tamanho desse exemplo.
Tentei criar três campos VARCHAR do tamanho 100, cada, o que me totalizaria um total de 300 caracteres. Não me pareceu a forma correta ... fica esquisito na hora de "emendar" o texto (dar sequencia do texto nos três campos).
Dúvidas:
a) Que tipo de campo devo usar? (o varchar, mesmo???)
b) Que tipo de componente devo usar no QReport, para que o texto continue automaticamente na linha de baixo, ou seja, para que eu possa dimensionar o texto no formato que eu quiser?
Desde já, obrigado. _________________ Longo e difícil é o caminho que, das trevas, nos leva à luz. |
|
| Voltar ao Topo |
|
 |
Caduzera Profissional

Registrado: Terça-Feira, 29 de Julho de 2008 Mensagens: 656
|
Enviada: Qui Dez 29, 2011 2:15 pm Assunto: |
|
|
Olá amigo ..
Crie um campo varchar(300) ou mais ... é o ideal ....
O campo varchar utiliza somente o espaço utilizado fazendo com que o espaço que sobre não seja utilizados...
Exemplos:
Em um campo varchar(300) se você inserir a informação 0123456789, ele utilizará apenas 10 espaços, deixando os 290 disponíveis (sem ocupar espaço no BD) ...
Sobre o componente do QuickReport, veja o QRMemo (acho que o nome é este) ... ele faz a quebra de linha automaticamente ... !!
Abs |
|
| Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Qui Dez 29, 2011 2:57 pm Assunto: |
|
|
| campo memo é exatamente pra esse caso. |
|
| Voltar ao Topo |
|
 |
pestana Colaborador

Registrado: Sábado, 25 de Junho de 2005 Mensagens: 3147 Localização: Araras-SP
|
Enviada: Qui Dez 29, 2011 10:01 pm Assunto: |
|
|
não seria melhor utilizar campo do tipo blob? e se amanhã está descrição de ocorrências ultrapassar o limite de varchar(300)? lógico que esta manutenção não seria um bicho de sete cabeças, mas ao meu ver um campo blob serveria melhor para estes tipo de problema. _________________ Ao invés de ficar desanimado no que deu de errado, olhe para frente, aprenda com os erros e veja o que ainda pode ser feito. A determinação e a persistência é uma das etapas para o sucesso. |
|
| Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Sex Dez 30, 2011 9:16 am Assunto: |
|
|
| justamente |
|
| Voltar ao Topo |
|
 |
Caduzera Profissional

Registrado: Terça-Feira, 29 de Julho de 2008 Mensagens: 656
|
Enviada: Sex Dez 30, 2011 10:24 am Assunto: |
|
|
Amigo, eu pensaria bem se a necessidade é mesmo de um campo BLOB pois o mesmo tem um peso muito grande (em espaço e performance).
Como eu disse você pode criar um campo varchar do tamanho que quiser ... (varchar(500), varchar(800), etc ...)
Eles tem um peso menor tanto de espaço quanto de performance ...
Meça bem qual seria a probabilidade de tamanho campo para ver qual vale mais e pena ...
Na minha visão, o BLOB só é usado em casos onde realmente a quantidade de informações não pode ser mensurada.
Espero ter ajudado..
Abs. |
|
| Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Sex Dez 30, 2011 6:17 pm Assunto: |
|
|
| Caduzera escreveu: | Amigo, eu pensaria bem se a necessidade é mesmo de um campo BLOB pois o mesmo tem um peso muito grande (em espaço e performance).
Como eu disse você pode criar um campo varchar do tamanho que quiser ... (varchar(500), varchar(800), etc ...)
Eles tem um peso menor tanto de espaço quanto de performance ...
Meça bem qual seria a probabilidade de tamanho campo para ver qual vale mais e pena ...
Na minha visão, o BLOB só é usado em casos onde realmente a quantidade de informações não pode ser mensurada.
Espero ter ajudado..
Abs. |
de onde vc tirou essa informação? |
|
| Voltar ao Topo |
|
 |
ms_nigres Experiente

Registrado: Domingo, 26 de Dezembro de 2010 Mensagens: 471
|
|
| Voltar ao Topo |
|
 |
Caduzera Profissional

Registrado: Terça-Feira, 29 de Julho de 2008 Mensagens: 656
|
Enviada: Sáb Dez 31, 2011 9:11 am Assunto: |
|
|
O que mencionei anteriormente diz respeito a minha experiência na utilização de blob's e varchar.
É simples realizar um teste, basta criar uma tabela, popular com uns mil registros e simular um SELECT * FROM uma com campo BLOB e outra com um Varchar(800) por exemplo.
Como disse anteriormente, o importante é analiser o tipo de informação que será armazenada e verificar se a mesma pode ou não ter um limite pré-definido. Se não puder, é BLOB na cabeça.
Espero não ter falado nenhuma bobeira, mas lendo o artigo que o amigo passou, vi que o que eu disse estava + - certo (no mínimo).
Abs |
|
| Voltar ao Topo |
|
 |
gilsonnrodrigues Moderador

Registrado: Quinta-Feira, 14 de Abril de 2005 Mensagens: 9009 Localização: Governador Valadares-MG
|
Enviada: Sáb Dez 31, 2011 10:06 am Assunto: |
|
|
| Caduzera escreveu: | vi que o que eu disse estava + - certo (no mínimo).
Abs |
vc ta falando desse trecho?
| Citação: | Você quer minimizar a quantidade de dados transferidos entre o cliente e o servidor?
Com Blobs você tem a vantagem que após ter recuperado o registro você pode
decidir se que ou não buscar dados do tipo Blob ligados à ele.
Com VARCHAR você tem a desvantagem, que estes são transmitidos através da
rede no tamanho declarado (VARCHAR's muito longos degradam o desempenho de
forma significativa em redes locais, para não mencionar conexões via dial-up.)
Este problema é reparado em Ib-6.5, que transmite somente dados significativos de
campos VARCHAR. |
|
|
| Voltar ao Topo |
|
 |
Lippi Membro Junior

Registrado: Terça-Feira, 25 de Novembro de 2008 Mensagens: 378
|
Enviada: Sáb Dez 31, 2011 4:13 pm Assunto: Dúvida |
|
|
Senhore,
Estou tentando testar com o campo BLOB, mas não sei qual o tipo de propriedade é devido a este campo.
Por exemplo:
Parece não dar certo com CAMPO.AsString.
Além do que, ao criar o campo do tipo BLOB, acrescenta-se automaticamente o Subtype Binary ???
Qual deve ser utilizado?
Obrigado. _________________ Longo e difícil é o caminho que, das trevas, nos leva à luz. |
|
| Voltar ao Topo |
|
 |
|