Stored Procedures
Oi, pessoal. Primeiramente quero registrar que já passei uma manhã inteira pesquisando aqui no forum sobre isso. Não consegui um esclarecimento para a minha necessidade.
Ainda estou muito verde em termos de desenvolvimento e estou começando a estudar sobre stored procedures a fim de melhorar a qualidade de meus softwares. Vi que usar SP é muito importante no que diz respeito a performance e segurança.
Tenho um banco FB que tem uma tabela de usuarios. Na tabela tenho os campos id, nick, nome, setor. Criei uma SP para consultar os dados nessa tabela passando um parametro "codigo" para a SP retornar os outros campos. Fiz isso no IBEXPERT e a SP funcionou uma beleza.
CREATE PROCEDURE PROC_USU ( codigo integer)returns ( id_ integer, nick_ varchar(10), nome_ varchar(50), setor_ varchar(20))asbegin select usuarios.id, usuarios.nick, usuarios.nome, usuarios.setor from usuarios where usuarios.id = :codigo into :id_, :nick_, :nome_, :setor_; suspend;end^
Agora gostaria de criar um pequeno aplicativo (teste) para retornar os dados da tabela em um dbgrid passando através de um dbedit o parametro "codigo" e utilizando para isso os componentes da paleta interbase.
Tem como? Quais componentes eu uso para manipular a SP? Como passo para ela o parametro? Alguém poderia me passar breve passo-a-passo de como fazer isso?
Desde já obrigado pela colaboração de todos.
Ainda estou muito verde em termos de desenvolvimento e estou começando a estudar sobre stored procedures a fim de melhorar a qualidade de meus softwares. Vi que usar SP é muito importante no que diz respeito a performance e segurança.
Tenho um banco FB que tem uma tabela de usuarios. Na tabela tenho os campos id, nick, nome, setor. Criei uma SP para consultar os dados nessa tabela passando um parametro "codigo" para a SP retornar os outros campos. Fiz isso no IBEXPERT e a SP funcionou uma beleza.
CREATE PROCEDURE PROC_USU ( codigo integer)returns ( id_ integer, nick_ varchar(10), nome_ varchar(50), setor_ varchar(20))asbegin select usuarios.id, usuarios.nick, usuarios.nome, usuarios.setor from usuarios where usuarios.id = :codigo into :id_, :nick_, :nome_, :setor_; suspend;end^
Agora gostaria de criar um pequeno aplicativo (teste) para retornar os dados da tabela em um dbgrid passando através de um dbedit o parametro "codigo" e utilizando para isso os componentes da paleta interbase.
Tem como? Quais componentes eu uso para manipular a SP? Como passo para ela o parametro? Alguém poderia me passar breve passo-a-passo de como fazer isso?
Desde já obrigado pela colaboração de todos.
Daniel Mourao
Curtidas 0
Respostas
Emerson Nascimento
01/06/2010
use como se fosse uma tabela.
numa query, coloque a instrução:
select * from proc_usu( :codigo )
depois passe o parâmetro como passaria para uma instrução SQL comum:
query.close;
query.parambyname('codigo').asinteger := 500;
query.open;
numa query, coloque a instrução:
select * from proc_usu( :codigo )
depois passe o parâmetro como passaria para uma instrução SQL comum:
query.close;
query.parambyname('codigo').asinteger := 500;
query.open;
GOSTEI 0
Daniel Mourao
01/06/2010
use como se fosse uma tabela.
numa query, coloque a instrução:
select * from proc_usu( :codigo )
depois passe o parâmetro como passaria para uma instrução SQL comum:
query.close;
query.parambyname('codigo').asinteger := 500;
query.open;
numa query, coloque a instrução:
select * from proc_usu( :codigo )
depois passe o parâmetro como passaria para uma instrução SQL comum:
query.close;
query.parambyname('codigo').asinteger := 500;
query.open;
como se fosse uma tabela você quer dizer uma TIBTable ou uma TIBQuery?
GOSTEI 0
Daniel Mourao
01/06/2010
Oi, pessoal.
Muito obrigado pela atenção de todos. Já consegui obter os resultados que queria. Tentei fechar o tópico mas, não consegui. Fica dando link não encontrado.
Valeu!
Muito obrigado pela atenção de todos. Já consegui obter os resultados que queria. Tentei fechar o tópico mas, não consegui. Fica dando link não encontrado.
Valeu!
GOSTEI 0