0

在我的存储过程中,我试图将记录插入到临时表中

在我的存储过程中,我试图将记录插入到临时表中

--Temporary table
create table #CR_TMP
    (

         ct_co_id               int        NULL 
         , ct_nbr               int        NULL 
         , ctrct_srvc_type         char(4)    NULL 
     , start_date          datetime   NULL 
     , end_date            datetime   NULL 
    )

  print 'Before insert' 

Insert into #CR_TMP
 select distinct col1,col2,......
from tableName
where conditions

print 'After insert'
select '#CR_TMP' as #CR_TMP, * from #CR_TMP
print 'here 1'

我运行了选择查询,它提供了大约 583 行。但是当我执行上述程序时。我认为它卡在插入过程中。我确实得到了“插入后”的结果,但没有得到打印“here 1”的结果。我让这个程序执行了 2 个小时,它被卡在了同一个地方。这里有任何指示吗?

我运行了选择查询,它提供了大约 583 行。但是当我执行上述程序时。我认为它卡在插入过程中。我确实得到了“插入后”的结果,但没有得到打印“here 1”的结果。我让这个程序执行了 2 个小时,它被卡在了同一个地方。这里有任何指示吗?

4

1 回答 1

1

该过程看起来不错,除了这部分:

print 'After insert'
select '#CR_TMP' as #CR_TMP, * 
from #CR_TMP
print 'here 1'

尝试将其更改为:

print 'After insert'
select '#CR_TMP' as [#CR_TMP], * 
from #CR_TMP
print 'here 1'

甚至删除的第一部分select

print 'After insert'
select * 
from #CR_TMP
print 'here 1'

编辑:

在聊天讨论之后,确定 sanika 认为是问题的存储过程的初始部分实际上正在运行。因此,我建议他们开始逐个查询进行测试,以确定实际问题出在哪里。到那时,调试一个 30 页的存储过程会更容易。

于 2012-08-16T21:06:07.857 回答