存储过程返回值 _프로시저_리턴값

CREATE TABLE [dbo].[Order](
None.gif
[o_id] [bigint] IDENTITY(1,1NOT FOR REPLICATION NOT NULL,
None.gif
[o_buyerid] [int] NOT NULL
None.gif)

1.OUTPUT参数返回值
例: 向Order表插入一条记录,返回其标识

None.gifCREATE PROCEDURE [dbo].[nb_order_insert] (
None.gif
@o_buyerid int
 ,
None.gif
@o_id bigint
 OUTPUT
None.gif)
None.gif
AS

None.gif
BEGIN
None.gif
SET NOCOUNT ON ;
None.gif
BEGIN

None.gif
INSERT INTO [Order] (o_buyerid )
None.gif
VALUES (@o_buyerid
 )
None.gif
SET @o_id = @@IDENTITY

None.gif
END
None.gif
END

存储过程中获得方法:

None.gif DECLARE   @o_buyerid   int
None.gif
DECLARE   @o_id   bigint
None.gif
EXEC   [ nb_order_insert ]   @o_buyerid  ,o_id  bigint

2.RETURN过程返回值

None.gifCREATE PROCEDURE [dbo].[nb_order_insert] (
None.gif
@o_buyerid int
 ,
None.gif
@o_id bigint
 OUTPUT
None.gif)
None.gif
AS

None.gif
BEGIN
None.gif
SET NOCOUNT ON ;
None.gif
IF(EXISTS(SELECT * FROM [Shop] WHERE [s_id] = @o_shopid
))
None.gif
BEGIN

None.gif
INSERT INTO [Order] (o_buyerid )
None.gif
VALUES (@o_buyerid
 )
None.gif
SET @o_id = @@IDENTITY

None.gif
RETURN 1  — 插入成功返回1
None.gif
END

None.gif
ELSE
None.gif
RETURN 0  — 插入失败返回0
None.gif
END

存储过程中的获取方法
None.gif DECLARE   @o_buyerid   int
None.gif
DECLARE   @o_id   bigint
None.gif
DECLARE   @result   bit
None.gif
EXEC   @result   =   [ nb_order_insert ]   @o_buyerid  ,o_id  bigint  

3.SELECT 数据集返回值

None.gifCREATE PROCEDURE [dbo].[nb_order_select] (
None.gif
@o_id int

None.gif)
None.gif
AS
None.gif
BEGIN
None.gif
SET NOCOUNT ON ;
None.gif
SELECT o_id,o_buyerid FROM [Order]

None.gif
WHERE o_id = @o_id
None.gif
GO

存储过程中的获取方法
(1)、使用临时表的方法

None.gif CREATE   TABLE   [ dbo ] . [ Temp ] (
None.gif
[ o_id ]   [ bigint ]   IDENTITY ( 1 , 1 NOT   FOR   REPLICATION   NOT   NULL ,
None.gif
[ o_buyerid ]   [ int ]   NOT   NULL
None.gif)
None.gif
INSERT   [ Temp ]   EXEC   [ nb_order_select ]   @o_id
None.gif– 这时 
Temp  就是EXEC执行SELECT 后的结果集
None.gif
SELECT   *   FROM   [ Temp ]
None.gif
DROP   [ Temp ]  — 删除临时表

(2)、速度不怎么样.(不推荐)

None.gif SELECT   *   from   openrowset (’provider_name ' , ' Trusted_Connection = yes’, ' exec nb_order_select’)

转载于:https://www.cnblogs.com/kevinkim/archive/2010/01/19/1651210.html

猜你喜欢

转载自blog.csdn.net/weixin_33676492/article/details/94493038