C#调用带返回值的存储过程
()在SQL Server中建立如下的存储过程: set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[GetNameById]
@studentid varchar(),
@studentname nvarchar() OUTPUT
AS
BEGIN
SELECT @studentname=studentname FROM student
WHERE studentid=@studentid
if @@Error<>
RETURN -
else
RETURN
END
该存储过程的作用是根据学号,获取姓名,并使用RETURN关键字来返回值。 如果要在SQL Server的查询分析器中执行该存储过程,对应的SQL语句如下: Declare @studentname nvarchar(),
exec GetNameById @studentname output,@id=
select @studentname select @@Error ()编写C#代码: using (SqlConnection conn = new SqlConnection(connStr))
{
try
{
SqlCommand cmd = new SqlCommand("GetNameById", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@studentid", ""); //给输入参数赋值
SqlParameter parOutput =cmd.Parameters.Add("@studentname", SqlDbType.NVarChar, ); //定义输出参数
parOutput.Direction = ParameterDirection.Output; //参数类型为Output
SqlParameter parReturn = new SqlParameter("@return", SqlDbType.Int);
parReturn.Direction = ParameterDirection.ReturnValue; //参数类型为ReturnValue cmd.Parameters.Add(parReturn);
conn.Open();
cmd.ExecuteNonQuery();
MessageBox.Show(parOutput.Value.ToString()); //显示输出参数的值
MessageBox.Show(parReturn.Value.ToString()); //显示返回值
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
} 上面的@return是临时参数,用于获取存储过程的返回值,这个参数名称可以是任意的。 拣尽寒枝不肯栖,寂寞沙洲。 分类: .Net 标签: C#, 存储过程 绿色通道: 谢谢推荐! 关注成功 收藏该文与我联系 zhouhb
关注 -
粉丝 - 关注成功 推荐成功 « 上一篇:DataGridView使用初步
» 下一篇:利用XmlDocument操作XML文件
C#调用带返回值的存储过程的更多相关文章
- oracle学习 十二 使用.net程序调用带返回值的存储过程(持续更新)
数据库返回的是结果集,存储过程返回的是一个或者多个值,所以不要使用while循环去读取,也不要使用datareader函数去调用.v_class_name是返回函数 使用.net调用oracle数据库 ...
- mysql 调用带返回值的存储过程
存储过程: create procedure proc_t(out uname varchar(50),out upwd varchar(50),in uid int) BEGIN select na ...
- sqlserver 带返回值的存储过程
create proc test ) output as begin select @result = 'haha' ; end go ), @count int exec @count = test ...
- SQL Server 创建带返回值的存储过程
--drop procedure zcstest; create procedure zcstest ( @tableName varchar(max), @dataCount int output ...
- sqlserver创建,调用 带返回值存取过程
<1>create: ALTER proc [dbo].[common_proc] @sql1 varchar(5000), @sql2 varchar(5000) OUTPUT as ...
- 慕课网-Java入门第一季-7-3 Java 中无参带返回值方法的使用
来源:http://www.imooc.com/code/1579 如果方法不包含参数,但有返回值,我们称为无参带返回值的方法. 例如:下面的代码,定义了一个方法名为 calSum ,无参数,但返回值 ...
- Java 中无参带返回值方法的使用
如果方法不包含参数,但有返回值,我们称为无参带返回值的方法. 例如:下面的代码,定义了一个方法名为 calSum ,无参数,但返回值为 int 类型的方法,执行的操作为计算两数之和,并返回结果 在 c ...
- C#调用存储过程详解(带返回值、参数输入输出等)
CREATE PROCEDURE [dbo].[GetNameById] @studentid varchar(8), @studentname nvarchar(50) OUTPUT AS BEGI ...
- java Servlet+mysql 调用带有输入参数和返回值的存储过程(原创)
这个数据访问的功能,我在.NET+Mysql .NET+Sqlserver PHP+Mysql上都实现过,并且都发布在了我博客园里面,因为我觉得这个功能实在是太重要,会让你少写很多SQL语句不说,还 ...
随机推荐
- Visual Studio 当前不会命中断点的问题 编辑pdf文件
Visual Studio 当前不会命中断点的问题 PDB文件概述
- org.hibernate.TypeMismatchException: Provided id of the wrong type for class cn.itcast.entity.User. Expected: class java.lang.String, got class java.lang.Integer at org.hibernate.event.internal.Defau
出现org.hibernate.TypeMismatchException: Provided id of the wrong type for class cn.itcast.entity.User ...
- window.name 跨域数据传输
通过window.name可以实现跨域数据传输. 要解决的功能: www.a.com/a.html 需要获取到 www.b.com/b.html页面内容的数据 需要3个页面 www.a.com/a. ...
- AIM Tech Round 4 (Div. 2)ABCD
这一场真的是血崩,a,b都被hack,还好结束前重交都过了 A:题意:找出得到k个不同的字符,所要更改的最小字符数 题解:首先如果k>字符串长度,直接impossible,然后直接记录一下不重复 ...
- 手动下载 Xcode 文档
下载Xcode文档的方法有两个: 1. 自动下载:到在Xcode的Preserences中Downloads页面的Documentation,点击对应文档的下载. 2. 手动下载:到这个页面:http ...
- hzau 1210 Happiness
1210: Happiness Time Limit: 1 Sec Memory Limit: 1280 MBSubmit: 1149 Solved: 301[Submit][Status][We ...
- Eclipse插件开发_学习_02_GEF入门实例
一.前言 这一节,我们将会创建一个GEF入门实例 二.新建RCP项目 1. New 一个 Plug-in Project 2.输入项目名 项目名:com.ray.gef.helloworld 3.Co ...
- rabbitmq_学习_01_rabbitmq安装
二.参考资料 1.RabbitMQ:windows10下安装 2.RabbitMQ系列(一):Windows下RabbitMQ安装及入门
- SCM-MANAGER 应用
什么是SCM-MANAGER 基于Web的,集成了 Git. Mercurial .Subversion 多种代码管理工具的源代码管理平台 它有什么优点 简易安装 不需要破解配置文件,完全可配置的 ...
- 201621123014《Java程序设计》第九周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 答: 2. 书面作业 本次作业题集集合 1. List中指定元素的删除(题集题目) 1.1 实验总结.并回答: ...