Pesquisas SQL - Usando DBExpress

Delphi

27/01/2006

Boa noite,

Pessoal poderiam me dizer como posso efetuar uma pesquisa usando a tecnologia do DBExpress.

No meu datamodulo tenho um [b:ad7a59330d]SQLConection[/b:ad7a59330d] com acesso a base, um [b:ad7a59330d]SQLDataSet[/b:ad7a59330d] com acesso a tabela, um [b:ad7a59330d]DataSetProvider [/b:ad7a59330d], um [b:ad7a59330d]ClienteDataSet[/b:ad7a59330d] e um [b:ad7a59330d]datasource[/b:ad7a59330d].

Eu não consigo executar uma query como :

´select * from lançamentos where filial=´+edit.text +´ and data between ´ + edit1.text +´ and ´+ edit2.text + ´ order by data´;

preciso jogar o resultado em um grid.

estou meio perdido com relação a componentes e forma de uso.

No aguardo de um apoio

Abraço
Wagner


Wagnermarrane

Wagnermarrane

Curtidas 0

Respostas

Wagnermarrane

Wagnermarrane

27/01/2006

pessoal acho que ja descobrir o problemas porém não sei como soluciona-lo

o problemas é que quando eu passo o valor do EDIT ele não aompanha as asp ´´.... então fica assim

select * from lancamentos where filial = [b:a1a8887fc4]ARTUR NOGUEIRA[/b:a1a8887fc4],

onde deveria ficar

select * from lancamentos where filial =[b:a1a8887fc4]´ARTUR NOGUEIRA´[/b:a1a8887fc4]

Como faço para poder passar estas ASPAS ´´ para a minha query.

Abraço

Wagner


GOSTEI 0
Wagnermarrane

Wagnermarrane

27/01/2006

select * from lancamentos where filial = [b:e853f7b522]ARTUR NOGUEIRA[/b:e853f7b522], onde deveria ficar select * from lancamentos where filial =[b:e853f7b522]´ARTUR NOGUEIRA´[/b:e853f7b522] Como faço para poder passar estas ASPAS ´´ para a minha query.


AI VAI

´select * from lançamentos where filial =´+#39+edit1.text+39

achei como fazer fica ai para o pessoal


GOSTEI 0
Macario

Macario

27/01/2006

Outras maneiras possiveis

with DM.cdsConsulta do
  begin
    CommandText := select * from lancamentos where filial = QuotedStr(Edit1.text);// esta funcão adiciona as aspas.
    Open;
  end;


Por Parametros

with DM.cdsConsulta do
  begin
    CommandText := select * from lancamentos where filial = :nomedoparametro;
    Params.ParamByName(´nomedoparametro´).asString := edit1.text;
    Open;
  end;


Espero que ajude. :arrow:


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

27/01/2006

Colega,

O problema em relação as aspas pode ser contornado como apresentado acima, ou seja, [b:f751ab73eb]QuotedStr[/b:f751ab73eb]. Entretanto, lembre-se que as datas devem ser submetidas no formato mm/dd/yyyy. Neste caso, o uso de componentes como o [b:f751ab73eb]DateTimerPicker [/b:f751ab73eb]facilita na obtenção de uma data válida e com uma interface mais elegante, bem como, a função [b:f751ab73eb]FormatDateTime [/b:f751ab73eb]é essencial para formatar datas em consultas SQL.


GOSTEI 0
Macario

Macario

27/01/2006

[quote:496be7010a=´Aroldo Zanela´]
...lembre-se que as datas devem ser submetidas no formato mm/dd/yyyy....[/quote:496be7010a]

Mês/Dia/Ano?

Aroldo eu utilizo MS-SQL e o mesmo esta seguindo as configurações regionais do windows. Estou utilizando dd/mm/yyyy, sabe me dizer se isso reflete em redução da performance? Pois até o momento não percebo nada.


GOSTEI 0
POSTAR