Fórum BDE x ADO x dbExpress x (Quem mais??) #250269
13/09/2004
0
Procurando algumas soluções (ainda não obtive - é só ler uma outra pergunta minha mais abaixo) vi muitos comentários sobre o dbExpress. Surge agora a pergunta crucial: [b:e9ad125d1b]qual das três (ADO, BDE, dbExpress) é a melhor para essa situação? [/b:e9ad125d1b](Delphi 5, SQL Server 7 e Win XP Pro). Mas, por favor, quero aprender então, se possível, não simplesmente respondam A ou B mas justifiquem pois preciso de tomar uma descisão séria nos próximos dias sobre a a tecnolgia de acesso, haja visto que a ADO tá me deixando (feio) na mão.
Willian
Curtir tópico
+ 0Posts
13/09/2004
Gandalf.nho
Gostei + 0
13/09/2004
Vinicius2k
Não creio que vc tenha as 3 opções, já que o dbExpress não está disponível no Delphi 5 (somente à partir do 6)...
Em resumo, ou vc fica com a BDE ou tenta otimizar sua aplicação para utilização da ADO...
Não sou grande conhecedor da ADO, mas me parece estranho vc ter lentidão, já é uma opinião quase unanime de que ADO é a melhor forma de acessar o MS-SQLServer...
Mesmo que vc tivesse o dbExpress à sua disposição os colegas que trabalham com este SGBD, provavelmente, lhe recomendariam utilizar ADO....
T+
Gostei + 0
13/09/2004
Marcelo Souza
Gostei + 0
13/09/2004
Dataclass
Atualmente não utilizo mais SQLServer nem MSAccess daí não uso mais ADO,porém na época que utilizavamos estas tecnologias migramos de BDE para ADO e foi muito bom.
Existem alguma opções nos componentes ADO que podem melhorar tua performance...não recordo bem mas tenta brincar um pouco com os componentes.
Espero ter sido útil.
Gostei + 0
13/09/2004
Leonardoffsilva
Como está configurado o cursor (Server ou Client).
Qual o Banco de Dados?
Está usando AdoTable ou AdoQuery?
Para aplicações Win32, desconheço forma de acesso mais eficiente e otimizada que ADO, mesmo usando outros SGDB (DB2, Oracle, Pervasive, etc).
Mesmo quando preciso trabalhar com o PostgreSql, uso o driver ADO para ODBC para fazer uma ponte com o driver ODBC do postgreSQL e digo que fica muito bom.
Deve ter alguma coisa errada aí. Posta mais detelhes do seu problema!
Gostei + 0
13/09/2004
Leonardoffsilva
SQL Server - Microsoft
Windows XP - Microsoft
ADO - Metodo de acesso a SGBD da Microsoft.
Como se vê, é muito difícil dar problema de lentidão.
Agora se eu não me engano, o delphi 5 tem problema com o ADO original da Borland e existe um update, inclusive para resolver um Bug de EOF aleatórios.
Abraços!
Gostei + 0
14/09/2004
Willian
Gostei + 0
14/09/2004
Leonardoffsilva
Não usa ADOTable em SqlServer!
ADOTable é para trabalhar com o Access. Funciona em SQL Server mas realmente dá problema de lentidão, pois toda a tabela é trafegada pela rede.
Tenta criar sua aplicação dentro dos conceitos de Cliente/Servidor, fazendo uso do ADOQuery e de transações. Inclusive para Access eu prefiro fazer uso exclusivo de ADOQuery.
Mas lembre-se de quando for fazer um select que retorne muitos registros de limitá-los em grupos. Aqui eu baixo em grupos de 50 registros.
Abraços!
Gostei + 0
14/09/2004
Willian
Não entendi... Como eu altero os dados então? Exibo os dados num DBGrid e preciso gravá-los. Como faço isso sem ADO Table??? O ADO pra mim é tão complicado que nem campo Lookup funciona: dá pau direto!!!!
Gostei + 0
14/09/2004
Leonardoffsilva
Você usaria a DBGrid para consulta e não para edição. Selecione a informação atravéz da DBGrid e mande os dados para objetos textEdit ou equivalentes.
Leia a alteração feita via usuário e comande um Update table via mesma adoquery. Logo após faça um novo select que a dbgrid virá atualizada.
Ou use uma segunda AdoQuery para a atualização. Nesse caso é só dar um refresh na AdoQuery associada ao dbgrid que a mesma é atualizada com os dados mais recentes.
Há lembre-se de deixar o curosr em Server, pois você sempre terá os dados do SGDB e não de um cache local.
Parece confuso mais é muito mais simples que o dbexpress.
Há, lembre-se que:
Conectores ADO e ODBC - São fabricados pelos fornecedores dos SGBD(em quase sua totalidade)
Conectores dbExpress - São fabricados pela Borland ou por Terceiros, mas ainda não vi um sequer fabricador pelo fornecedor do SGBD.
Pos isso que eu adotei o ADO e logo estarei migrando para ADO.NET
Dá uma olhada em www.delphi.about.com que tem um curso on-line muito bom sobre ADO. Explica tudo e muito bem detalhado!
Abraços!
Gostei + 0
14/09/2004
Willian
[b:93806a616d][i:93806a616d][u:93806a616d]Há lembre-se de deixar o curosr em Server, pois você sempre terá os dados do SGDB e não de um cache local. [/u:93806a616d][/i:93806a616d][/b:93806a616d]
Resolveu!!! Valeu!!!! É duro ser novato nessas tecnologias.
Mas (sempre tem um ´mas´) surgiu um outro problema: quando eu ponho o cursor em Server ele não aceita mais nenhum tipo de índice. Como resolvo isso?
Obs.: Ficou muito mais rápido o sistema e os problemas desapareceram quase todos, persistem apenas agora os índices.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)