MSSQL - 存储过程OutPut返回值
1、存储过程中不使用外部参数。
存储过程:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: HF_Ultrastrong
-- Create date: 2015年7月20日12:42:02
-- Description: 插入一条数据,并返回所得表示列(自动增加的字段)
-- =============================================
Alter PROCEDURE GetIdentityvalue
@ID int output
AS
BEGIN
insert into tb_Admin ([Admin],[Password]) values ('admin_2', 123456)
select @ID = @@IDENTITY
END
GO
代码:
/// <summary>
/// 点击显示数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=HUANGFU-PC;database=db_NetShop;integrated security = true;");
SqlCommand cmd = new SqlCommand("GetIdentityvalue", con);
cmd.CommandType = CommandType.StoredProcedure; //添加参数
//使用OutPut参数,返回新纪录的ID(ID:子增长字段)
SqlParameter ID = cmd.Parameters.Add("@ID", SqlDbType.Int, 8);
ID.Direction = ParameterDirection.Output; con.Open();
cmd.ExecuteNonQuery();
con.Close(); this.Label1.Text = Convert.ToString(ID.Value);
}
*在插入这一条记录之前,前面的子增长字段是16,所以执行新的插入,这一条记录的子增长ID是17.
最终效果:

1、存储过程中不使用外部参数。
存储过程:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: HF_Ultrastrong
-- Create date: 2015年7月20日12:42:02
-- Description: 插入一条数据,并返回所得表示列(自动增加的字段)
-- =============================================
Alter PROCEDURE GetIdentityvalue
@AdminName varchar(20),
@PassWord varchar(20),
@ID int output
AS
BEGIN
insert into tb_Admin ([Admin],[Password]) values (@AdminName, @PassWord)
select @ID = @@IDENTITY
END
GO
代码:
/// <summary>
/// 点击显示数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=HUANGFU-PC;database=db_NetShop;integrated security = true;");
SqlCommand cmd = new SqlCommand("GetIdentityvalue", con);
cmd.CommandType = CommandType.StoredProcedure; //添加参数
//使用OutPut参数,返回新纪录的ID(ID:子增长字段)
SqlParameter[] para = new SqlParameter[]
{
new SqlParameter("@AdminName", "admin_2"),
new SqlParameter("@PassWord", 123456),
new SqlParameter("@ID", SqlDbType.Int, 8)
};
cmd.Parameters.AddRange(para);
para[para.Length - 1].Direction = ParameterDirection.Output; con.Open();
cmd.ExecuteNonQuery();
con.Close(); this.Label1.Text = Convert.ToString(para[para.Length - 1].Value);
}
最终效果:

MSSQL - 存储过程OutPut返回值的更多相关文章
- MSSQL - 存储过程Return返回值
1.存储过程中不使用外部参数. 存储过程: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ========================== ...
- 关于ExecuteNonQuery执行存储过程的返回值 、、实例讲解存储过程的返回值与传出参数、、、C#获取存储过程的 Return返回值和Output输出参数值
关于ExecuteNonQuery执行存储过程的返回值 用到过ExecuteNonQuery()函数的朋友们在开发的时候肯定这么用过. if(cmd.ExecuteNonQuery("xxx ...
- SqlServer如何获取存储过程的返回值
1.Output参数返回值 1 CREATE PROCEDURE [dbo].[upInformation]( 2 @age int , 3 @id bigint OUTPUT 4 ) 5 AS 6 ...
- 利用SQLServer查询分析器获取存储过程的返回值,检查测试存储过程
1.存储过程没有返回值的情况(即存储过程语句中没有return之类的语句)用方法 int count = ExecuteNonQuery(..)执行存储过程其返回值只有两种情况(1)如果通过查询分析器 ...
- 在Delphi中如何获得SQL中存储过程的返回值?
示例存储过程:create procedure proc_loginusername varchar(20),password varchar(20)asdeclare @result intsele ...
- C#获取执行存储过程的" 返回值"代码
以下是C#代码: /// <summary> /// 执行存储过程,返回" 返回值" /// </summary> /// <param name=& ...
- .net 接收存储过程的返回值 。。。。
.net 接收存储过程的返回值 .... Posted on 2009-06-10 20:26 且行且思 阅读(...) 评论(...) 编辑 收藏 例如在向数据库添加新数据时,需要检测是否有重复 本 ...
- EF中执行存储过程,获取output返回值
EF不能直接支持执行存储过程,于是使用转化成执行SQL语句的形式,却怎么也获取不到output的值,折腾的好久,终于解决了,分享下曲折的经历: public int AddVote(int title ...
- SqlServer 获得存储过程的返回值(参数返回),别玩了output
declare @dingdanid int declare @fanhuizhi int set @dingdanid = 1 exec 检测订单出库资格 @dingdanid ,@fanhuizh ...
随机推荐
- js window.onload事件
1.最简单的调用方式 直接写到html的body标签里面,如: ? 1 2 3 4 <html> <body onload="func()"& ...
- 动态加载EXE和DLL
程序中加载了一个DLL文件,但生成的EXE在脱离了DLL文件后仍然可以 单独使用,这是动态加载DLL技术.即:调用资源中的DLL. 此技术的好处:EXE可以使用DLL中的函数,但不会额外增加一 个DL ...
- Windows服务编程集合
http://zyan.cc/windows_mstsc/ Optionname--Optionvalues描述 type=----own, share, interact, kernel, file ...
- UIScrollView方法 属性详解
--前言:UIScrollView使用非常广,本文研究UIScrollView各属性和方法,明白它们的意义.作用.在后面的一篇文章有整理UIScrollView一些常见用法以及一些效果的实现思路. - ...
- 疯牛-- Aggressive cows (二分)
疯牛 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些小 ...
- go - 变量和常量
1.定义变量 goLang中定义变量的方式很多 先声明再使用:如果定义的变量未使用编译时会报错 a. /*定义单个变量*/ var varName type //定义一个 type 类型的变量 var ...
- xcode4.5.1、iphone5、ios6 使用记录
链接地址:http://blog.sina.com.cn/s/blog_6123f9650101dmo7.html 1.修改工程名:直接选中工程名点一下,就像修改名称夹名称一样简单了. 2.导入旧 ...
- PAD会取代PC吗
公司上了新的内部管理系统,上线一片混乱,群里也很热闹,从系统是否应该支持pad谈起 ,有技术大佬说5年内就是pad时代了,pad将完全取代pc.我不知道大佬从何得出这个结论,有和数据支撑.我的观点是, ...
- 【转】增强 scite 编辑器的代码提示功能
在 windows 下写 Lua, 我能找到的最好的编辑器就是 luaForWindows 项目里带的 scite. npp (即 notepad++ ) 也将就着能用, 不过只有代码高亮和简单的单词 ...
- Python中打印列表的序号和内容
==>the start 最近作业里要用到遍历打印出列表中的序号和内容,我刚开始用了个很笨的方法来写,后来老师说可以使用enumerate()函数,所以我就特意研究了下. 先看我之前用的笨方法: ...