从标题中,当我运行存储过程时,会显示错误。但是当我手动运行产生错误的select语句时,SQL中没有问题。
存储过程的这一部分产生错误:
"
select @ls_pat_origin = pat_origin,
@ls_payer_tp = payer_tp
from ip_admission
where hos_cd = @as_hos_cd and
hrn_num = @as_hrn_num and
episode_num = @al_episode_num and
pat_tp = @as_pat_tp
select @err = @@error, @rc = @@rowcount
if (@err <> 0)
begin
rollback tran pr_oe_set_disc_ptg_tran
return 1
end
if ((@rc <= 0) and (@err = 0))
begin
rollback tran pr_oe_set_disc_ptg_tran
raiserror 25009, 'ip_admission [pr_oe_set_disc_ptg]'
return 2
end
&#34;
但是当我在SQL中运行select语句时,不会出现任何问题和结果:
&#34;
select *
from ip_admission
where hos_cd = '62' and
hrn_num = '6203175322017' and
episode_num = 2 and
pat_tp = 'I'
;
&#34;
我仔细检查了传递给过程的值,它们与我在SQL select语句中使用的值相同。它只发生在这一条记录中。我们将此存储过程用于其他记录,其他记录没有问题。
感谢您的帮助。
这是存储过程错误:
&#34;
Could not execute statement.
Error occurred while selecting from ip_admission [pr_oe_set_disc_ptg].
Sybase error code=25009, SQLState="(none)"
Severity Level=16, State=1, Transaction State=0
Line 69
&#34;