[firebase-br] Duvida com views

Marcelo - MK Softwares marcelo em mksoftwares.com.br
Seg Jul 29 17:40:47 -03 2019


Por hora tudo esclarecido

Muito obrigado a todos



Em 29/07/2019 17:29, Gabriel Bonzanini escreveu:
> Olá Marcelo.
>
> Não acredito que exista uma quantidade recomendada de campos para uma
> tabela. O que eu recomendaria é observar se o campo está sendo criado no
> local correto; se a propriedade em questão pertence ao objeto em questão.
>
> Se a informação puder ser expandida (relação 1 para N) deve ser criada uma
> tabela detalhe (filha). Fora isto, quando a relação é de 1 para 1, você
> pode querer separar os campos blob para aumentar desempenho em alguns
> locais do sistema (buscar um campo blob é relativamente custoso). Depende
> muito do volume de dados, mas geralmente os campos podem ficar juntos sem
> maiores problemas.
>
> Em seg, 29 de jul de 2019 17:04, Marcelo - MK Softwares <
> marcelo em mksoftwares.com.br> escreveu:
>
>> Puxa vida é mesmo, não tinha visto.
>>
>> Agora surgiu outra dúvida:
>>
>> Sei que não é legal uma tabela ter muitos campos, mas qual é um número
>> bom, qua não prejudique a performance e nem usuabilidade?
>>
>>
>>
>> Em 29/07/2019 15:35, Fernando Alécio escreveu:
>>> Marcelo o Cantú respondeu essa dúvida sua logo no início do tópico.
>>>
>>> Em 29/07/2019 15:17, Marcelo - MK Softwares escreveu:
>>>> Caro Helio, me desculpe, acabei respondendo pra você em vez de mandar
>>>> no: lista em firebase.com.br
>>>>
>>>> Respondendo as informações
>>>>
>>>> Quando citei no exemplo Campo1, campo2 e minhatabela e minhaview,
>>>> eram apenas como exemplo.
>>>>
>>>> Claro que não vou criar uma view com apenas 3 campos, elas serão
>>>> usadas como o colega citou para fazer joins em outras tabelas,
>>>> retornando vários campos.
>>>>
>>>> Mas com relação a minha dúvida: é melhor usar * representando todos
>>>> os campos, ou descrever campo a campo dentro do select?
>>>>
>>>> */Atenciosamente:/*
>>>> */Marcelo Krol/*
>>>> /Proprietário/     _/Marcelo Krol Softwares/_
>>>> Rua Presidente Vargas, 450 - Centro
>>>> CEP: 84550-000 - Rebouças - Paraná
>>>> Tel.: (42)3457-2653 ou (42)99906-5650
>>>> /www.mksoftwares.com.br <http://www.mksoftwares.com.br>
>>>> marcelo em mksoftwares.com.br <mailto:marcelo em mksoftwares.com.br>
>>>> Skype: marcelo.krol/
>>>>
>>>> ------------------------------------------------------------------------
>>>> _/*Aviso 1:*/_ 'Esta mensagem é direcionada apenas para os endereços
>>>> constantes no cabeçalho inicial. Se você não está listado nos
>>>> endereços constantes no cabeçalho, pedimos-lhe que desconsidere
>>>> completamente o conteúdo dessa mensagem e cuja cópia, encaminhamento
>>>> e/ou execução das ações citadas estão imediatamente anuladas e
>>>> proibidas'.
>>>> _/*Aviso 2:*/_ 'Apesar da MK SOFTWARES tomar todas as precauções
>>>> razoáveis para assegurar que nenhuma virose esteja presente nesse
>>>> e-mail, a empresa não poderá aceitar a responsabilidade por quaisquer
>>>> perdas ou danos causados por esse e-mail ou por seus anexos'.
>>>> ------------------------------------------------------------------------
>>>>
>>>> Em 29/07/2019 11:50, Hélio Oliveira escreveu:
>>>>> Com certeza Cantu!
>>>>>
>>>>> Agora há situações em que ele pode estar criando uma view pelo
>>>>> simples fato de necessitar fazer junção com outras tabelas e
>>>>> retornar alguns valores destas e nesta situação eu também
>>>>> recomendaria o uso de SPs.
>>>>>
>>>>> Por exemplo:
>>>>>
>>>>> SELECT A.CODIGO, A.NOME, A.ENDERECO, A.CEP, B.NOME
>>>>> FROM CLIENTES A
>>>>>    JOIN CIDADE B ON (B.CODIGO_CIDADE = A.CODIGO_CIDADE)
>>>>>
>>>>> Neste simples exemplo se ele tiver uma tabela de cidade populada com
>>>>> todas cidades dos Estados Brasileiro, ele pode ter um grande ganho
>>>>> montando uma estratégia onde ele irá verificar o código da cidade
>>>>> anterior sendo diferente ele busca no nome, caso contrario não e
>>>>> assim sucessivamente.
>>>>>
>>>>> Em 29/07/2019 11:03, Carlos H. Cantu escreveu:
>>>>>> A procedure selecionável só faz sentido se a informação devolvida
>>>>>> precisar ser manipulada de alguma forma (através de cursores, etc) pra
>>>>>> gerar o resultado, do contrário.
>>>>>>
>>>>>> Simplesmente jogar o select dentro de uma procedure não trará
>>>>>> benefício nesse sentido.
>>>>>>
>>>>>> []s
>>>>>> Carlos H. Cantu
>>>>>> eBook Guia de Migração para o FB 3 - www.firebase.com.br/guiafb3.php
>>>>>> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>>>>>>
>>>>>> HO> Bom dia!
>>>>>>
>>>>>> HO> Como bem respondeu Cantu, evite o famoso "SELECT * FROM
>>>>>> MINHATABELA"
>>>>>>
>>>>>> HO> Uma sugestão... porque o amigo não utiliza Stored Procedures
>>>>>> HO> selecionáveis ao invés de Views, a depender da quantidade de
>>>>>> dados que
>>>>>> HO> essas tabelas irão receber um determinado momento você poderá ter
>>>>>> HO> problema de lentidão.
>>>>>>
>>>>>> HO> Em 28/07/2019 10:15, Marcelo - MK Softwares escreveu:
>>>>>>>> Bom dia
>>>>>>>>
>>>>>>>> Estou adequando o meu sistema e estou fazendo mais uso de Views. Com
>>>>>>>> isso surgiu uma dúvida: Quando vou chamar uma view no meu
>>>>>>>> software, o
>>>>>>>> que é mais rápido ou viável, ou ainda, qual a melhor prática para
>>>>>>>> a sua
>>>>>>>> execução? Segue exemplos:
>>>>>>>>
>>>>>>>> Método 1: select * from minhaview v where v.meucampo1 = 1;
>>>>>>>>
>>>>>>>> ou
>>>>>>>>
>>>>>>>> Método 2: select v.meucampo1, v.meucampo2, v.meucampo3 from
>>>>>>>> minhaview v
>>>>>>>> where v.meucampo1 = 1;
>>>>>>>>
>>>>>>>> Ressalto que a "execução" que me refiro acima é para o banco de
>>>>>>>> dados,
>>>>>>>> não para o aplicativo.
>>>>>>
>>>>>> ______________________________________________
>>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>>> Para consultar mensagens antigas:
>>>>>> http://www.firebase.com.br/pesquisa_lista.html
>>>>>>
>>>>>
>>>>>
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>>> Para consultar mensagens antigas:
>>>>> http://www.firebase.com.br/pesquisa_lista.html
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>> Para consultar mensagens antigas:
>>>> http://www.firebase.com.br/pesquisa_lista.html
>>>>
>>>
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas:
>>> http://www.firebase.com.br/pesquisa_lista.html
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas:
>> http://www.firebase.com.br/pesquisa_lista.html
>>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://www.firebase.com.br/pesquisa_lista.html



Mais detalhes sobre a lista de discussão lista