更好的存储过程方法

时间:2011-05-04 07:00:58

标签: sql sql-server-2005 stored-procedures

我需要专家建议,我应该为每个操作创建单独的存储过程,或者我应该为所有操作创建一个存储过程,如下例所示:

create proc proc_name
@mode int =0,
@othervariables

as
begin
if @mode =1
begin
insert operation
end

else if @mode =2
begin
update operation
end

else if @mode =3
begin
delete operation
end

else if @mode =4
begin
select statement
end
---- other operations
end

专家我真的需要你宝贵的建议。速度将成为我网站的主要关注点。它们将减少插入/更新操作以及每分钟数千次检索操作。

由于

1 个答案:

答案 0 :(得分:3)

通常你应该创建单独的程序。

通常,您将根据操作使用不同的参数集,并且更容易使用和维护仅具有实际使用参数的过程。

您应该尽量避免使用示例中的mode参数之类的幻数。使用描述性过程名称而不是参数中的数字更容易看到正在发生的事情。

通过选择一种方法或其他方法,您无法获得相关的性能提升。