• 主页
  • 基础类
  • 应用实例
  • 新技术前沿

存储过程里能写方法吗?能写怎么写呢?急啊。谢谢各位啦

a7lang 2004-12-28 02:48:23
...全文
46 点赞 收藏 5
写回复
5 条回复
a7lang 2004年12月28日
谢谢各位
回复 点赞
hglhyy 2004年12月28日
这样试试:

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

ALTER procedure ABCD
@fld1 char(100),
@fld2 char(300)
as

--每一过程拥有一唯一区界号,过程内的异常编号在此基础上增加
declare @errcode integer
set @errcode=11000


declare @return integer /*返回结果的初始化*/
set @return=0



--启动事务处理
declare @tran_point int --控制事务嵌套
set @tran_point=@@trancount --保存事务点
if @tran_point=0
begin tran tran_ABCD
else
save tran tran_ABCD

update ....

if @@error <> 0
begin
set @return=2
goto err_lab
end

insert into ....

if @@error <> 0
begin
set @return=3
goto err_lab
end

--------

--事务处理
if @tran_point=0
commit tran tran_ABCD
goto return_lab

err_lab:
if @return<100 set @return=@errcode +@return
rollback tran tran_ABCD

return_lab:
return @return

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

回复 点赞
a7lang 2004年12月28日
哦,可是不会啊。
回复 点赞
JACKEY 2004年12月28日
自己写一个外部函数/存储过程调用
回复 点赞
a7lang 2004年12月28日
我想这样
if ()
{
if()
{
}
else
{
sub()
}
}
else
{
sub()
}
如果不能写方法还有什么办法实现吗?
回复 点赞
发动态
发帖子
MS-SQL Server
创建于2007-09-28

1.4w+

社区成员

25.3w+

社区内容

MS-SQL Server相关内容讨论专区
社区公告
暂无公告