Duvidas em SQL / Delphi
17/03/2006
0
Tipo, tenho um form com um grid e um botao de pesquisa e um edit...
queria tipo por um select no botao de pesquisa, tipo:
select * from fornecedores where id_forn = edit1.text
Como faço isso?
Valeu pessoal.
Ricieri
Posts
17/03/2006
Robotpost
Select * from fornecedores
where id_fornecedor =:id_fornecedor
No evento onClick do botão coloque:
query.close;
query.parameters.parambyname(´id_fornecedor´).value:= edit1.text
query.open;
Assim, ele tratá o resultado de acordo com o ID do fornecedor que vc digitar no edit.
Abraços!!!
Fernando
18/03/2006
Ricieri
tipo, nesta mesma tela eu tenho o cadastro do fornecedor.
se eu colocar este select dentro da query, ele não vai dar pal na hora de cadastrar?
eu queria aprender a fazer o select dentro do codigo do delphi
como faço?
alguem poderia explicar? grato.
18/03/2006
Paullsoftware
é melhor vc usar uma query a parte para fazer a pesquisa, ou então ter um controle na propriedade SQL da sua query mais/mesnos assim:
Query.Sql = 0 - Linha = Select * From Tabela 1 - Linha = Where codigo>0 //para mostrar todos os registros 2 - Linha = Order by Nome // para ordenar os dados pelo nome
na hora de fazer uma consulta vc faz.
ao invés de ser assim:
Select * from fornecedores where id_fornecedor =:id_fornecedor
faz assim:
No evento onClick do botão coloque:
query.close; query.parameters.parambyname(´wCod´).value:= edit1.text; query.open;
[b:0c3bd4da4e]**[/b:0c3bd4da4e]normalmente uso SQL puro para incluir/excluir/atualizar/pesquisar ou qq outra rotina na base, não tesei o código, mais assim deve funcionar... qq coisa post o resultado! :wink:
18/03/2006
Ricieri
tipo, eu vou usar 2 querys no mesmo form. como vou tratar na hora de cadastrar e na hr de consultar?
18/03/2006
Paullsoftware
se usa nativos experimente usar IbDataSet é mais simples do que query e pode ser feito assim na hora de pesquisar...
por padrão vc pode setar a propriedade Select SQL para ficar assim
Select * From Tabela Where Codigo > 0 Order by Codigo
na hora de pesqusar vc pode apenas mudar a segunda linha assim:
Tabela.Close;
Tabela.SelectSQL[1]:=´Where Codigo=:wID´;
Tabela.ParamByName(´wID´).AsInteger := StrToInt(EditPesquisa.Text);
Tabela.Open;
e funciona perfeitamente :wink:
18/03/2006
Weber
Query1.SQL.Clear; Query1.SQL.Add(´Select * From Cadastro´); Query1.SQL.Add(´Where cad_codigo = ´+Trim(Edit1.Text)); Query1.Open;
18/03/2006
Ricieri
estou mto grato. vou testar!
Clique aqui para fazer login e interagir na Comunidade :)