Migração Paradox X Firebird

Delphi

20/09/2004

Ola programadores,


Estou migrando meu sistema do Paradox para o Firebird,
E tenho algumas duvida sobre como criar as consultas, todas minhas consultas usava o tabela.findnearest ou tabela.findkey. Com a migração estava colocando tudo com o LOCATE, mas vi no fórum que a melhor opção e a consulta via SQL, já usava estas consultas para gerar relatórios e verificar duplicidade em meus cadastros no paradox. Só que não estou conseguindo implementar estas consultas no DBExpress.

Uso Sqlconnection, Sqldatasete, Datasetprovider , Clientdataset e Datasource.

Onde vou implementar a SQL? Quando coloque uma Sqlquery não funciona da a mensagem: operação não suportada!
Estou montando a query run time.


Se alguem pudar me ajudar agradeço !

Hugo Fabrício


Hugofab

Hugofab

Curtidas 0

Respostas

Macario

Macario

20/09/2004

olá poste um exemplo de consulta que voce faz no paradox para podermos lhe mostrar como fica em SQL.


GOSTEI 0
Hugofab

Hugofab

20/09/2004

na verdade já tenho uma noção de como trabalhar com o sql , só não estou sabendo em qual componente usar , como fazer a implemantação.

Pois no Paradox usava a Query, tentei usar a sqlquery para linkar no Dbdrid e da um erro dizendo não aceita linkar um componete unidirecional.


se puder me dar uma luz agradeço !


GOSTEI 0
Paulo_amorim

Paulo_amorim

20/09/2004

Olá

POde-se usar o TSimpleDataSet também...


GOSTEI 0
Gandalf.nho

Gandalf.nho

20/09/2004

Experimente usar o IBX


GOSTEI 0
Vinicius2k

Vinicius2k

20/09/2004

POde-se usar o TSimpleDataSet também...

Perdão Paulo, mas o melhor a fazer é esquecer que este componente existe... :D

Colega,

Vc pode usar a instrução SQL tanto na TSQLQuery (propriedade SQL) ou no SQLDataSet (propriedade CommandText)...
A direferença é nenhum dos dois pode ser ligado direamente à um TDataSource para exibição em data-awares como DBGrids, por exemplo... (Esta tentativa de ligação, provavelmente, é a razão da sua mensagem de erro)...

A camada dbExpress é unidirecional, isso quer dizer que vc só pode navegar no DataSet em um sentido e data-awares exigem navegação bidirecional, por isso deve-se utilizar um TDataSetProvider + TClientDataSet.

Até mesmo para suas consultas, vc deverá usar a estrutura : DataSet -> Provider -> ClientDataSet -> DataSource -> data-awares.

Vc pode também implementar a instrução SQL no CommandText do TClientDataSet, desde que configure o Provider para aceitar isso (Options -> poAllowCommandText = True), mas o mais comum é que se utilize no SQLDataSet ou SQLQuery.

Se vc pesquisar aqui no fórum vai encontrar muita coisa sobre dbExpress que pode lhe ajudar a esclarecer suas dúvidas mais rapidamente, mas se se persistirem, não exite em perguntar...

T+


GOSTEI 0
POSTAR