使用存储过程并返回值与及返回值的获得方法
2009-12-22 13:39
309 查看
CREATE TABLE [dbo].[Order](
[o_id] [bigint] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
[o_buyerid] [int] NOT NULL
)
1.OUPUT参数返回值
例: 向Order表插入一条记录,返回其标识
CREATE PROCEDURE [dbo].[nb_order_insert](
@o_buyerid int ,
@o_id bigint OUTPUT
)
AS
BEGIN
SET NOCOUNT ON;
BEGIN
INSERT INTO [Order](o_buyerid )
VALUES (@o_buyerid )
SET @o_id = @@IDENTITY
END
END
存储过程中获得方法:
DECLARE @o_buyerid int
DECLARE @o_id bigint
EXEC [nb_order_insert] @o_buyerid ,o_id bigint
[b]2.RETURN过程返回值
[/b]
CREATE PROCEDURE [dbo].[nb_order_insert](
@o_buyerid int ,
@o_id bigint OUTPUT
)
AS
BEGIN
SET NOCOUNT ON;
IF(EXISTS(SELECT * FROM [Shop] WHERE [s_id] = @o_shopid))
BEGIN
INSERT INTO [Order](o_buyerid )
VALUES (@o_buyerid )
SET @o_id = @@IDENTITY
RETURN 1 — 插入成功返回1
END
ELSE
RETURN 0 — 插入失败返回0
END
存储过程中的获取方法
DECLARE @o_buyerid int
DECLARE @o_id bigint
DECLARE @result bit
EXEC @result = [nb_order_insert] @o_buyerid ,o_id bigint
3.SELECT 数据集返回值
CREATE PROCEDURE [dbo].[nb_order_select](
@o_id int
)
AS
BEGIN
SET NOCOUNT ON;
SELECT o_id,o_buyerid FROM [Order]
WHERE o_id = @o_id
GO
存储过程中的获取方法
(1)、使用临时表的方法
CREATE TABLE [dbo].[Temp](
[o_id] [bigint] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
[o_buyerid] [int] NOT NULL
)
INSERT [Temp] EXEC [nb_order_select] @o_id
– 这时 Temp 就是EXEC执行SELECT 后的结果集
SELECT * FROM [Temp]
DROP [Temp] — 删除临时表
(2)、速度不怎么样.(不推荐)
SELECT * from openrowset(’provider_name','Trusted_Connection=yes’,'exec nb_order_select’)
相关文章推荐
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法[转]
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 使用存储过程并返回值与及返回值的获得方法
- 在存储过程中使用存储过程并返回值与及output输出参数值的获得方法
- asp.net调用mysql 存储过程 带 out 返回值,返回刚插入数据库中的自增的ID,LAST_INSERT_ID() 的使用
- C#中的类SqlCommand对象使用方法ExecuteNonQuery()调用SQLServer存储过程时,存储过程执行成功,数据发生改变,但是返回-1
- SQL存储过程读取另一存储过程返回值(select返回)变通方法
- ASP.NET调用存储过程返回输出参数,获得返回值
- 调用存储过程并且使用返回值的基本方法
- PHP模拟POST提交数据并获得返回值之CURL方法(使用PHP extension,然后使用php_curl.dll,很不错)
- java中的方法返回值使用泛型,实现灵活的返回值类型
- 使用NSInvocation 调用实例的方法,且等待获得返回值
- asp.net调用mysql 存储过程 带 out 返回值,返回刚插入数据库中的自增的ID,LAST_INSERT_ID() 的使用
- 分享:在存储过程中使用另一个存储过程返回的查询结果集的方法