日期:2014-05-18 浏览次数:20726 次
set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go -- 创建存储过程 ALTER Proc [dbo].[csp_AddInfo] -- 存储过程参数 @UserName nvarchar(50), @Pwd nvarchar(50) output AS -- 存储过程语句体 insert into usertable ([name],password) values (@UserName,@Pwd) RETURN -- 执行
--添加 create proc maco_add ( @id int ) as begin insert into tablename select @id end --删除 create proc maco_del ( @id int ) as begin delete from tablename where id =@id end
------解决方案--------------------
添加,删除这些参数差别大,添加可能就是很多数据,删除可能就一个id就行了,可能要分开写,当然也可以写到一起,通过一个标识,来表示是添加还是删除,但是这样差别很大的最好也不要放在一起吧。像参数基本想同的是可以写在里面的。就像我们上层写函数一样
int func(int a ,int b,int type)
{
if type=1
return a+b
else
return a-b
}
这样就是做的不同的事情了。存储过程的默认参数,这样写的机会更大了。
------解决方案--------------------
存储过程就相当于Java中的函数。就这么简单。语法:
CREATE PROCEDURE proc_name @Paramter1 INT, --参数列表,多个参数用逗号分隔,有2种参数类型(输入[默认]/输出[OUTPUT]) @Paramter2 INT OUTPUT AS BEGIN --你的SQL语句 END