嵌套存储过程返回值的调用

嵌套存储过程返回值的调用

create table test(id int identity(1,1),code varchar(8))
insert into test select 'aaaa' union select 'bbbb'
go

create procedure sp_test2 
@id   int        output,
@code varchar(8) output
as
begin
    select @id=id,@code=code from test where code='aaaa'
    return
end
go

create procedure sp_test1 
as
begin
    declare @id int,@code varchar(8)
    exec sp_test2 @id out,@code out
    select @id as nid,@code as ncode
end
go

exec sp_test1
go
/*
nid         ncode    
----------- -------- 
1           aaaa
*/

drop procedure sp_test1,sp_test2
drop table test

时间: 2024-12-21 21:47:22

嵌套存储过程返回值的调用的相关文章

PHP调用存储过程返回值不一致问题的解决方法分析_php技巧

本文实例讲述了PHP调用存储过程返回值不一致问题的解决方法.分享给大家供大家参考,具体如下: 今天遇一个同学聊存储过程返回值经常得到意外的值为null, 因为白天有事,晚上给做一个实验放在这里供有相应问题的同学查看一下. 存储过程: delimiter// createprocedureusp_s2(outpar1int) begin selectinet_ntoa(ip),portfromproxy_listlimit5; selectcount(*)intopar1fromproxy_lis

Entity Framework 5.0 调用存储过程 返回值为什么是int类型

问题描述 用VS2012+EntityFramework5.0生成代码但是生成的存储过程返回值有问题为什么生成的存储过程返回值为int类型??存储过程中操作复杂最后返回几个字段值.publicvirtualintGetMenuByRID(Nullable<int>rID){varrIDParameter=rID.HasValue?newObjectParameter("RID",rID):newObjectParameter("RID",typeof(i

mysql-VB 读取 MySql 存储过程返回值

问题描述 VB 读取 MySql 存储过程返回值 -- 我定义的存储过程如下,很简单的一个过程,并且在Cmd命令里面运行是正常的.USE appraisesystem;DROP procedure IF EXISTS protest; DELIMITER $$USE appraisesystem$$CREATE DEFINER=root@% PROCEDURE protest(Word varchar(100)out lens int)BEGINset lens=length(Word);END

求助: Hibernate如何没有列名的存储过程返回值

问题描述 Hibernate如何没有列名的存储过程返回值.我在数据库(informix)里用存储过程读取数据并返回值,但都没有列名.然后用Hibernate的执行原生sql语句的方法读取:===========================================...StringsqlProc="{callproc('2')}";session.createSQLQuery(sqlProc).addEntity(MyMapping.class).list();...====

SqlServer获取存储过程返回值的实例_MsSql

1.OUPUT参数返回值 复制代码 代码如下: CREATE PROCEDURE [dbo].[nb_order_insert](@o_buyerid int ,@o_id bigint OUTPUT)ASBEGINSET NOCOUNT ON;BEGININSERT INTO [Order](o_buyerid )VALUES (@o_buyerid )SET @o_id = @@IDENTITYENDEND 存储过程中获得方法: 复制代码 代码如下: DECLARE @o_buyerid i

mysql 存储过程 释放-mysql 存储过程返回值 怎么释放

问题描述 mysql 存储过程返回值 怎么释放 带返回值的存储过程 每次执行后会返回一个变量一直存在于会话中 执行下一次查询的时候仍然能够访问上传的变量 call f(@o1); SELECT @o1; call f(@o2); SELECT @o1,@o2; call f(@o3); SELECT @o1,@o2,@o3; 要怎么释放掉呢?

整理sqlserver 级联更新和删除 c#调用存储过程返回值

整理一下级联更新和删除 c#调用返回值 use master go IF exists(select 1 from sysdatabases where name='temp') BEGIN DROP DATABASE temp END create database temp go use temp go --drop table ProductInfo create table ProductInfo ( ProductId int primary key , ProductName var

获得存储过程返回值的方法(return的值)

存储过程 获得存储过程的返回值 System.Data.SqlClient.SqlConnection scon = new System.Data.SqlClient.SqlConnection("server=Netangel;uid=etopsUS;pwd=etops;database=etops");System.Data.SqlClient.SqlCommand scom = new System.Data.SqlClient.SqlCommand("",

怎样同时获得存储过程 返回值、select结果和print内容

问题描述 如题,用C#调用SQLServer存储过程谢谢 解决方案 解决方案二:conn.InfoMessage+=newSqlInfoMessageEventHandler(conn_InfoMessage);}voidconn_InfoMessage(objectsender,SqlInfoMessageEventArgse){this.message=e.ToString();//可获得print的信息}Select的结果可以通过DataAdapter.Fill来获得