2011-10-07 76 views
0

我有一個名爲插入程序,代碼如下:把結果集到一個臨時表

Create procedure Gen_insert 
As 
BEGIN 


create table #temp 
(insert_stmt varchar(max)) 
insert into #temp 
EXEC Generate_Insert @Table = 'Admin' 

insert into #temp 
EXEC Generate_Insert @Table = 'Impas' 

insert into #temp 
EXEC Generate_Insert @Table = 'Asui' 

insert into #temp 
EXEC Generate_Insert @Table = 'Alstd' 

select * from #temp 

End 

當我執行它,我收到以下錯誤:

Msg 8164, Level 16, State 1, Procedure Gen_Insert, Line 73 
An INSERT EXEC statement cannot be nested. 

誰能幫助我。

+2

爲什麼地球上你會給你的過程命名爲'INSERT'? – JNK

+0

爲什麼地球上你沒有做正確的事情,並寫入插入,而不是使用一般的插入過程? – HLGEM

回答

4

An INSERT EXEC statement cannot be nested.錯誤信息非常清楚。您正在嵌套INSERT ... EXEC。聲明。您調用的程序(Generate_Insert)再次使用INSERT ... EXEC或insert過程的調用者在INSERT ... EXEC中使用它。只有你可以找到這種情況。根據經驗,應該避免INSERT ... EXEC,因爲this and other problems

相關問題