sql存储过程,大家进来讲下呗。。。。。
我刚刚接触存储过程,有很多的地方都不清楚,希望大家能举下例子。
例如:添加,修改,删除,大概都是怎么写的。还有如果我写一个存储过程,里面是这样的:
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgo -- 创建存储过程 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)asbegininsert into tablename select @id end--删除create proc maco_del(@id int)asbegindelete from tablename where id =@idend
[解决办法]
添加,删除这些参数差别大,添加可能就是很多数据,删除可能就一个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 OUTPUTASBEGIN --你的SQL语句END