ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Conexão ao banco

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
thiagofqz
Novato
Novato


Registrado: Terça-Feira, 21 de Mai de 2013
Mensagens: 9

MensagemEnviada: Sex Mai 24, 2013 11:56 am    Assunto: Conexão ao banco Responder com Citação

Pessoal estou com uma dúvida aqui, uso o banco Firebird, qual melhor componente para gravar informações no banco: IBTable ou IBQuery?
Para que serve o IBClientdataSet e o IBDataset?
Qual desses componentes consome menos memória?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sex Mai 24, 2013 7:20 pm    Assunto: Responder com Citação

Olá, Thiago.
Não tenho muita experiência com IBX, mas sei que a IBQuery não é editável, ou seja, você não consegue utilizar o comando Edit nela, por exemplo. Já o IBTable representa uma tabela do banco, portanto aceita essas operações.
Normalmente o pessoal utiliza as Queries para realizar alguma operação de alteração de dados (Update, Delete, Insert) ou até mesmo um Select para retornar algum valor que será utilizado na aplicação (como o valor máximo de um campo na tabela).
A respeito do consumo de memória, também é relativo. Você pode, por exemplo, criar uma IBQuery em tempo de execução e destruí-la após o uso.

Só não sei te dar mais detalhes sobre o IBClientDataSet e IBDataSet. Talvez a galera aqui que domina o IBX possa te ajudar melhor.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
juniorpba
Colaborador
Colaborador


Registrado: Quarta-Feira, 25 de Janeiro de 2012
Mensagens: 1690
Localização: Paranaiba - MS

MensagemEnviada: Sex Mai 24, 2013 10:51 pm    Assunto: Responder com Citação

Aee Tiago blz, vou ser franco para você meu amigo ,use ibtable , porque vc poderá ter auto dominio de edição de suas tabelas , agora em relação a querys como nosso amigo batera nos disse , é apenas mesmo para visualição de dados mais servem tambem para gravar , mas meu ponto de vista serviria mesmo para atualziação de tabela , deletar ou fazer algum soma entre outros valores de tabelas
_________________
"Conhece a teu inimigo e a ti mesmo e lutará 100 batalhas sem medo da derrota"
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
Ghost_Rider
Colaborador
Colaborador


Registrado: Segunda-Feira, 6 de Outubro de 2003
Mensagens: 4437

MensagemEnviada: Sáb Mai 25, 2013 3:57 pm    Assunto: Responder com Citação

Tá, vamos lá...vamos analisar do ponto de vista prático...

- uma TTable, independente de qual palheta de componente seja (IBX, DBX, IBO, etc...) irá carregar uma tabela no banco de dados, e manter conexão permanente com ela...sendo assim, imagine que seu banco de dados já tenha 3 anos de movimento, com uma média de 100 vendas diárias (tenho cliente que tem média de 350 vendas diárias), com 20 dias de venda por mês. Isso daria 72.000 registros em 3 anos...considerando que cada venda tenha pelo menos 3 itens (nesse cliente tenho em média 180 itens) são 216.000 mil itens. Como ao abrir o TTable ele carrega todos os registros, imagina o quanto de memória seu sistema vai usar ....

- TQuery, independente da palheta, trabalha sob demanda ou seja, você busca o que quiser. Quando você esta fazendo uma venda nova, pra que precisa todas as vendas carregadas ??? ou todos os itens vendidos ??

TTable é pra tabela temporária (se bem que eu não uso), pra quem esta aprendendo, pra você fazer um sistema pra lançar suas despesas pessoais, pra sistema de verdade, tem que ser tudo Query, em todo o sistema.

Outra coisa, imagina um sistema com 20 usuários vendendo, cada um deles carrega a tabela de produtos...como fica a atualização de produtos ??

Abraço...
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
sergiotucano
Novato
Novato


Registrado: Domingo, 19 de Agosto de 2012
Mensagens: 87
Localização: Lorena, SP

MensagemEnviada: Sáb Mai 25, 2013 5:00 pm    Assunto: Responder com Citação

Onde trabalho 90% dos códigos usam a paleta Interbase, e claro, como já foi escrito cada componente tem o seu uso.

Consultas em geral eu faço com o IBQuery, muito mais rápido do que locate em IBTable e/ou Filter.

Geralmente o IBTable fica com INSERTS E UPDATES.

OPS ! Quando o sistema é grande os mínimos detalhes fazem diferença na otimização, por isso abomino o locate ! Wink
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Mai 25, 2013 10:13 pm    Assunto: Responder com Citação

Ótimas observações, Ghost_Rider.
Conseguiu explicar de uma maneira bem mais prática o uso de Tables e Queries.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
thiagofqz
Novato
Novato


Registrado: Terça-Feira, 21 de Mai de 2013
Mensagens: 9

MensagemEnviada: Dom Mai 26, 2013 2:47 pm    Assunto: Responder com Citação

Valeu pelas dicas, abraço
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB