Usuário com melhor resposta
Salvar dados que retornam em uma procedure

Pergunta
-
Bom dia, tenho uma procedure que retorna um select com vários campos, como faço pra inserir estes campo em uma tabela temporária?
Sei que tenho que criar uma tabela temporária com todos os campos do result da procedure e depois dar um insert executando a procedure, conforme código abaixo:
create table #teste
(
cod_aluno INT NULL,
Aluno VARCHAR(150) NULL,
nom_curso VARCHAR(150) NULL,
)
insert into #teste
(
cod_aluno
,Aluno
,nom_curso
)
exec st_rel_definicao_curricular 11111, 0, 2014, 1,20065, 55, 1, 0, 0Quando executo dá o erro:
Msg 8164, Level 16, State 1, Procedure st_rel_definicao_curricular, Line 133
An INSERT EXEC statement cannot be nested.
Vinicius Silva vinycius01@gmail.com
- Editado vinycius01 quarta-feira, 18 de junho de 2014 14:52
Respostas
-
Faz o seguinte comenta as linhas onde vc cria a tbl temp e tenta desse jeito
insert into #teste execute st_rel_definicao_curricular 11111, 0, 2014, 1,20065, 55, 1, 0, 0
Pra testar faça o select na tabela temp
select * from #teste
drop table #teste
Nome : Romy G. Moura Cargo: Analista Programador
- Marcado como Resposta vinycius01 quarta-feira, 18 de junho de 2014 19:41
Todas as Respostas
-
Para criar a tabela temporária vc precisa editar sua proc e no select retornado incluir into #tbl mas é preciso tomar cuidado ao utilizar tabelas temporárias, vc sempre deve dropar a tabela após sua utilização para evitar consumo de memória entre outros conceitos que vc deve abordar.
Mas a grosso modo é assim que podemos iniciar uma tabela temp.
select * into #tbl from tblExisting
Nome : Romy G. Moura Cargo: Analista Programador
-
-
Faz o seguinte comenta as linhas onde vc cria a tbl temp e tenta desse jeito
insert into #teste execute st_rel_definicao_curricular 11111, 0, 2014, 1,20065, 55, 1, 0, 0
Pra testar faça o select na tabela temp
select * from #teste
drop table #teste
Nome : Romy G. Moura Cargo: Analista Programador
- Marcado como Resposta vinycius01 quarta-feira, 18 de junho de 2014 19:41
-