삽입 EXEC 문은, 내가 세 가지 절차 MainProcedure, Procedure1이
이 난 그냥 선택 문이 Procedure1에서
1 Procedure2
), ) Procedure2에서 Procedure1를 호출 오전에 출력 삽입을 중첩 될 수 없습니다 나는 Procedure2를 호출하고 주요 절차에서)3 #table 및 오류
에게 메시지 8164, 수준 16, 상태 1을 던졌습니다 #table에 출력을 삽입하려고 스피, 절차 프로 시저 2, 줄 10 INSERT EXEC 문은 중첩 될 수 없습니다.
는참조 용 샘플 절차를 찾으십시오 서버 이름의 세부 사항을 지정하지 않음으로써이 문제를 해결하는 다른 방법은
내가 서버 이름을 지정 사용할 필요가 어디 OPENROWSET을 사용하여이 문제를 해결 할 수있다
Create Proc Procedure1
As
Begin
Select 'Arun' Name, 'Pollachi' Place
Union
Select 'Vedaraj' Name, 'Devakottai' Place
End
Go
Create Proc Procedure2
As
Begin
Create Table #Table1
(
Name Varchar(50), Place Varchar(50)
)
INSERT #Table1
Exec Procedure1
SELECT 'Procedure2' [Source], * FROM #Table1
DROP TABLE #Table1
End
Go
Create Proc MainProcedure
As
Begin
Create Table #Table1
(
[Source] Varchar(50), Name Varchar(50), Place Varchar(50)
)
INSERT #Table1
Exec Procedure2
select * from #Table1
DROP TABLE #Table1
End
Go
내 주 절차를 변경하고 실행하게 만들 수 있습니다. 고마워요! 당신이 말했듯이
보다는 작동 나던 Procedure2 – Rohan
@RS INSERT # 표 Exec을 Procedure1에서 INSERT # 표 Exec을 Procedure1 사용 INSERT INTO # 표 Exec을 Procedure... –
사용 INSERT INTO # 표 Exec을 Procedure1 ... 또는 되세요 이 스레드를보십시오 .http : //social.msdn.microsoft.com/forums/en-US/transactsql/thread/e66c9e71-4424-4cf3-920c-6725ffc40162/ – Rohan