日期:2014-05-18  浏览次数:20726 次

sql存储过程,大家进来讲下呗。。。。。
我刚刚接触存储过程,有很多的地方都不清楚,希望大家能举下例子。
  例如:添加,修改,删除,大概都是怎么写的。还有如果我写一个存储过程,里面是这样的:
SQL code


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
        -- 执行




这是一个文件,我可以不可以还在这个文件里面在写个修改或者是查询的呢。希望大家能给些例子。
还有就是在java里面是怎么调用的呢。

------解决方案--------------------
存储过程(feixianxxx)
http://topic.csdn.net/u/20091127/21/10a70c07-8683-4f9e-be7e-2415fa8f6956.html?seed=296887941&r=61490884#r_61490884

------解决方案--------------------
至于在java里面是怎么调用的话,你应该去java版问.
------解决方案--------------------
SQL code

--添加
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中的函数。就这么简单。语法:
SQL code
CREATE PROCEDURE proc_name
    @Paramter1 INT,    --参数列表,多个参数用逗号分隔,有2种参数类型(输入[默认]/输出[OUTPUT])
    @Paramter2 INT OUTPUT
AS
BEGIN
    --你的SQL语句
END