TQuery ou TTable ?
Olá
Estou com a seguitne duvida:
O que vocês acham melhor pra mim usar? O TQuery com consultas, alteraçoes, etc em SQL Query ou usando os comandos do TTable para realizar o mesmo?
O que é mais rápido? O que é mais eficiente?
Brigado
Estou com a seguitne duvida:
O que vocês acham melhor pra mim usar? O TQuery com consultas, alteraçoes, etc em SQL Query ou usando os comandos do TTable para realizar o mesmo?
O que é mais rápido? O que é mais eficiente?
Brigado
Nildo
Curtidas 0
Respostas
Thaisandrade
07/07/2003
Com certeza a melhor opção é usar instruções SQL para manipular seu banco de dados, sem contar que a portabilidade do seu sistema fica maior.
GOSTEI 0
Nildo
07/07/2003
Mas me disseram que seu meu banco de dados conta com um numero grande de registros, é melhor usar o TTable para instruções atravez de propriedades. É verdade?
GOSTEI 0
Thaisandrade
07/07/2003
Temos um sistema que roda totalmente com instruções SQL, usamos o Sybase e existem tabelas que tem mais de 5 milhões de registros, funciona normalmente. Qual banco de dados você usa?
GOSTEI 0
Nildo
07/07/2003
Paradox
Oq vc acha
Oq vc acha
GOSTEI 0
Kfe
07/07/2003
É muito melhor usar tquery para manipulação de dados. Quando utilziado um componente ttable, o acesso ao banco com tabelas mto grandes ficará comrpometido. Isso porque todos os registros serão utilizados localmente e os filtros serão aplicados na máquina local. se sua aplicação fnciona com banco via rede, terá uma péssima perfomance. Com um componente tQuery, vc poderá ter maior controle sobre os ´result sets´, updates, etc, ganhando em desempenho. A filtragem será feita pelo próprio banco, retornando somente os registros desejados.
Portanto, não tenha dúvidas. Se for uma aplicação grande ou qeu funcionará via redes, use TQuery.
Espero ter ajudado.
Abraços
Portanto, não tenha dúvidas. Se for uma aplicação grande ou qeu funcionará via redes, use TQuery.
Espero ter ajudado.
Abraços
GOSTEI 0
Marcelo Carvalho
07/07/2003
Oi,
E tem mais... Logo, logo o Paradox vai abrir o bico, vai corromper os índices, você vai ficar furioso e mudar pro Interbase. Aí usando TQuery já estará na metade do caminho para a migração... :wink:
E tem mais... Logo, logo o Paradox vai abrir o bico, vai corromper os índices, você vai ficar furioso e mudar pro Interbase. Aí usando TQuery já estará na metade do caminho para a migração... :wink:
GOSTEI 0
Nildo
07/07/2003
Obrigado mesmo!
Queria saber tambem se existe algum banco de dados que eu possa manipular com Queries de SQL, mas que não necessite do BDE ou qualquer um desses gerenciadores de banco de dados?
Obrigado!
Queria saber tambem se existe algum banco de dados que eu possa manipular com Queries de SQL, mas que não necessite do BDE ou qualquer um desses gerenciadores de banco de dados?
Obrigado!
GOSTEI 0
Delmar
07/07/2003
Ainda com uso de query vc poderá escolher somente os campos que deseja retornar. O uso de TTable sempre retornará todos os campos o que, no caso de uma rede, contribui ainda mais para degradar a performance de todo seu ambiente (não somente do servidor).
Outra cacarterística importante da query, é que é possível mesclar dados de várias tabelas e ainda contar com todo potencial SQL para recuperar informações a partir do SGBD.
De preferência use um SGBD e não um gerenciador de arquivos.
Existem várias Engine de acesso a dados e, vale lembrar, o BDE foi descontinuado.
DBExpress, IBX, IBO, ADO, ZEOS
T+
Outra cacarterística importante da query, é que é possível mesclar dados de várias tabelas e ainda contar com todo potencial SQL para recuperar informações a partir do SGBD.
De preferência use um SGBD e não um gerenciador de arquivos.
Existem várias Engine de acesso a dados e, vale lembrar, o BDE foi descontinuado.
DBExpress, IBX, IBO, ADO, ZEOS
T+
GOSTEI 0
Nildo
07/07/2003
Obrigado!
Vc pode me responder soh mais uma coisa?
Quando eu uso a Query SQL para deletar um registro, Cai no evento OnAfterDelete do TQuery ? Porque aqui na minha TQuery nao caiu no onAfterDelete. Porque? A mesma coisa ocorre com o AfterEdit, afterInsert
Vc pode me responder soh mais uma coisa?
Quando eu uso a Query SQL para deletar um registro, Cai no evento OnAfterDelete do TQuery ? Porque aqui na minha TQuery nao caiu no onAfterDelete. Porque? A mesma coisa ocorre com o AfterEdit, afterInsert
GOSTEI 0
Thaisandrade
07/07/2003
Bom, já que você está usando Paradox, por que não usa Interbase? É um banco de dados que apresenta uma ótima performance, de fácil manutenção e administração além de ser Free. Quanto ao método de conexão, você pode usar o BDE, ou então usar os componentes IBX. Sem falar de outros métodos, tipo ADO.
GOSTEI 0
Nildo
07/07/2003
Entao se eu usar o InterBase usando os componentes IBx, eu não vou precisar instalar nada nas máquinas de meus clientes?
GOSTEI 0
Marcelo Carvalho
07/07/2003
Oi,
Como disse a Thais, o IB é uma solução quase natural para o Delphi.
Em tese você se livra do BDE, mas passa a depender do IBClient. Mas há um ´truquinho´... Se você colocar a biblioteca GDS32.dll do Firebird (e não a original do IB) junto da sua aplicação, você consegue rodar um cliente do IB sem [b:f74e3dcb04]nenhuma[/b:f74e3dcb04] instalação extra nos clientes e sem reboot. Tenho usado uma versão meio antiga da DLL do FB, que funciona perfeitamente com o IBX do D7. Não posso garantir o funcionamento com as versões mais novas do FB.
A DLL do FB é mais ´esperta´ que a do IB. A do IB depende da configuração da porta TCP/IP que o IB usa, através de uma entrada no arquivo SERVICES do Windows. Esta configuração é feita pela instalação do IBClient (que também copia a DLL e mais algumas coisas) e às vezes depende de reboot. Já o FB pressupõe esta porta como padrão. Você só precisaria configurá-la em caso de conflito, o que é muito improvável.
Como disse a Thais, o IB é uma solução quase natural para o Delphi.
Em tese você se livra do BDE, mas passa a depender do IBClient. Mas há um ´truquinho´... Se você colocar a biblioteca GDS32.dll do Firebird (e não a original do IB) junto da sua aplicação, você consegue rodar um cliente do IB sem [b:f74e3dcb04]nenhuma[/b:f74e3dcb04] instalação extra nos clientes e sem reboot. Tenho usado uma versão meio antiga da DLL do FB, que funciona perfeitamente com o IBX do D7. Não posso garantir o funcionamento com as versões mais novas do FB.
A DLL do FB é mais ´esperta´ que a do IB. A do IB depende da configuração da porta TCP/IP que o IB usa, através de uma entrada no arquivo SERVICES do Windows. Esta configuração é feita pela instalação do IBClient (que também copia a DLL e mais algumas coisas) e às vezes depende de reboot. Já o FB pressupõe esta porta como padrão. Você só precisaria configurá-la em caso de conflito, o que é muito improvável.
GOSTEI 0
Nildo
07/07/2003
Valew! Eh sempre bom a gente discutir esses assuntos! Quem tiver mais algum comentário pode postá-lo aqui!
GOSTEI 0