Como fazer: Create Procedure temporaria?
Olá.
Alguem ja fez uso ou tem conhecimento sobre este metodo?
Quais dicas, prós e contras?
Grato.
Alguem ja fez uso ou tem conhecimento sobre este metodo?
Quais dicas, prós e contras?
Grato.
Macario
Curtidas 0
Respostas
Psergio.p
15/12/2006
As procedures temporárias assim como as tabelas temporárias são vistas somente enquanto dura a conexão, ou seja quando a conexão é encerrada elas são removidas!
Não sei qual o seu objetivo más até só usei tabelas temporárias, procedures temporarias nunca usei!
Segue um exemplo:
CREATE PROCEDURE #SP_TESTE
AS
BEGIN
SELECT 1
END
Não sei qual o seu objetivo más até só usei tabelas temporárias, procedures temporarias nunca usei!
Segue um exemplo:
CREATE PROCEDURE #SP_TESTE
AS
BEGIN
SELECT 1
END
GOSTEI 0
Macario
15/12/2006
Olá [b:6e85865062]psergio.p[/b:6e85865062], bom dia colega.
Tenho a seguinte necessidade, mostrada nos exemplos abaixo:
Nesta procedure faço uma simples instrução, onde a tabela NOTAS e CLIENTES encontram-se no mesmo Database.
Meu ´problema´ é a seguinte situação:
Neste caso tenho os objetos em databases distintos.
Devido a esse motivo preciso montar as instruções em runtine, pois so assim sei onde cada tabela envolvida está (banco1 ou banco2).
1 - )Outro ponto, eu tendo 50 usuarios no mesmo sistema, terei problemas no SQL em estar criando muitas Sp´s temporarias?
2- ) Existe alguma outra maneira para solucionar o caso descrito?
Grato pela atenção 8)
Tenho a seguinte necessidade, mostrada nos exemplos abaixo:
create procedure NOTASPERIODO ( @PERIODOINI as datetime, @PERIODOFIN as datetime ) as begin select A.CODNOTA, A.CODCLI, B.NOMCLI, A.TOTNOTA from NOTAS A inner join CLIENTES B on (A.CODCLI = B.CODCLI) where A.DATA between @PERIODOINI and @PERIODOFIN end
Nesta procedure faço uma simples instrução, onde a tabela NOTAS e CLIENTES encontram-se no mesmo Database.
Meu ´problema´ é a seguinte situação:
create procedure NOTASPERIODO ( @PERIODOINI as datetime, @PERIODOFIN as datetime ) as begin select A.CODNOTA, A.CODCLI, B.NOMCLI, A.TOTNOTA from BANCO1.dbo.NOTAS A inner join BANCO2.dbo.CLIENTES B on (A.CODCLI = B.CODCLI) where A.DATA between @PERIODOINI and @PERIODOFIN end
Neste caso tenho os objetos em databases distintos.
Devido a esse motivo preciso montar as instruções em runtine, pois so assim sei onde cada tabela envolvida está (banco1 ou banco2).
1 - )Outro ponto, eu tendo 50 usuarios no mesmo sistema, terei problemas no SQL em estar criando muitas Sp´s temporarias?
2- ) Existe alguma outra maneira para solucionar o caso descrito?
Grato pela atenção 8)
GOSTEI 0
Psergio.p
15/12/2006
Tudo bem com você?
Agora sim entendi seu problema. Deixa eu perguntar uma coisa: Você não poderia passar o nome do banco como parametro para a stored procedure e gerar a query dinamicamente? Se puder ser assim você só terá uma stored procedure! Aí eu te ajuda a monta-la.
Agora sim entendi seu problema. Deixa eu perguntar uma coisa: Você não poderia passar o nome do banco como parametro para a stored procedure e gerar a query dinamicamente? Se puder ser assim você só terá uma stored procedure! Aí eu te ajuda a monta-la.
GOSTEI 0
Macario
15/12/2006
Por enquanto tudo tranquilo por aqui.
Então, no caso de montar a sp dinamicamente em determinados modulos faço uso deste recurso.
Há necessidade real envolve uma sp com cursor declarado, imagino eu que nesta situação já não seria tão facil ´cria-la´. Pois alem do cursor faço insert dentro de uma tabela temporaria via execute().
Infelizmente não posso postar o código da sp para um melhor entendimento.
Fiz um teste criando a sp temporaria executado sem erro algum, mas no momento de passar os parametros para os componentes de acesso ocorre o erro, no qual diz que (ja no primeiro ) parametro ´tal´ não foi encontrado.
Grato.
Então, no caso de montar a sp dinamicamente em determinados modulos faço uso deste recurso.
Há necessidade real envolve uma sp com cursor declarado, imagino eu que nesta situação já não seria tão facil ´cria-la´. Pois alem do cursor faço insert dentro de uma tabela temporaria via execute().
Infelizmente não posso postar o código da sp para um melhor entendimento.
Fiz um teste criando a sp temporaria executado sem erro algum, mas no momento de passar os parametros para os componentes de acesso ocorre o erro, no qual diz que (ja no primeiro ) parametro ´tal´ não foi encontrado.
Grato.
GOSTEI 0
Psergio.p
15/12/2006
Sem o se código é dificil te dizer alguma coisa!
GOSTEI 0