- 浏览: 723766 次
- 性别:
- 来自: 南宁
文章分类
最新评论
-
如果我爱上你的笑容:
牛腩老师讲的课很棒 目前新闻发系统学习中 `(*∩_∩*)′
64位win8.1系统安装intelhaxm -
k04110411:
jhlovett 写道牛哥,想问下 public void P ...
ASP.NET通过HTML的上传文件标签来上传文件 -
liuzhijie3:
我也留个脚印用到了,讲的不错
.NET中获取字符串的MD5码 -
han_yankun2009:
,楠老师不错呀
在一堆数中查询相加得某个数的组合 -
allstara609:
请问牛老师,datalist中如何去掉数字中多余的0?
去掉数字中多余的0(ASP.NET)
在网上也找到许多关于.NET中使用存储过程获取输出参数的代码,但怎么看怎么都是记不住,还是自己亲自实践一遍后再记录下来,这样才能记得住,必竟自己做过的东西是比较难忘记的!!!
步骤如下:
①建立数据库logintest,在数据库中建立表User.
向建立的表中添加几条测试数据.
②在数据库中建立存储过程:
③在VS中建立一个测试页面ProcTest.aspx,在ProcTest.aspx.cs中导入命名空间
④在Page_Load方法里写入如下代码:
运行ASPX页面,则能够看到执行存储过程后返回的结果!
需要注意的是如果输出参数是varchar类型的话则必须定义长度,否则会出错,如果输出参数是数字型的话就不必定义长度了!
下面是完整的ProcTest.aspx.cs的源码:
步骤如下:
①建立数据库logintest,在数据库中建立表User.
向建立的表中添加几条测试数据.
②在数据库中建立存储过程:
USE [logintest] GO -- ============================================= -- Author: 牛腩 -- Create date: 2008-10-21 14:01 -- Description: 通过传入的uid获取用户姓名 -- ============================================= SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[GetUNameById] @uid int, @name varchar(50) output AS BEGIN select @name=uname from [User] where uid=@uid END
③在VS中建立一个测试页面ProcTest.aspx,在ProcTest.aspx.cs中导入命名空间
using System.Data; using System.Data.SqlClient;
④在Page_Load方法里写入如下代码:
// 建立连接字符串,在正式项目中可放在web.config中 string connStr = "server=niunan\\sqlexpress;uid=sa;pwd=123456;database=logintest"; // 连接数据库 SqlConnection conn = new SqlConnection(connStr); try { // 打开数据库连接 conn.Open(); // 创建用于执行数据库操作的命令对象, GetUNameById为存储过程名称 SqlCommand cmd = new SqlCommand("GetUNameById", conn); // 设置执行命令的方式为存储过程 cmd.CommandType = CommandType.StoredProcedure; // 向命令对象添加存储过程所需要的参数 cmd.Parameters.Add("@uid", SqlDbType.Int); // 设置要传入到存储过程的参数值 cmd.Parameters["@uid"].Value = 2; // 添加存储过程中的输出参数,如果是字符型的必须定义长度 cmd.Parameters.Add("@name", SqlDbType.VarChar, 50); // 设置参数为output输出参数 cmd.Parameters["@name"].Direction = ParameterDirection.Output; // 执行存储过程 cmd.ExecuteReader(); // 获取执行存储过程后的输出参数 string name = cmd.Parameters["@name"].Value.ToString(); Response.Write(name); } catch (Exception ex) { Response.Write(ex.Message); if (conn.State == ConnectionState.Open) { conn.Close(); } } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } }
运行ASPX页面,则能够看到执行存储过程后返回的结果!
需要注意的是如果输出参数是varchar类型的话则必须定义长度,否则会出错,如果输出参数是数字型的话就不必定义长度了!
下面是完整的ProcTest.aspx.cs的源码:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; public partial class ProcTest : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { // 建立连接字符串,在正式项目中可放在web.config中 string connStr = "server=niunan\\sqlexpress;uid=sa;pwd=123456;database=logintest"; // 连接数据库 SqlConnection conn = new SqlConnection(connStr); try { // 打开数据库连接 conn.Open(); // 创建用于执行数据库操作的命令对象, GetUNameById为存储过程名称 SqlCommand cmd = new SqlCommand("GetUNameById", conn); // 设置执行命令的方式为存储过程 cmd.CommandType = CommandType.StoredProcedure; // 向命令对象添加存储过程所需要的参数 cmd.Parameters.Add("@uid", SqlDbType.Int); // 设置要传入到存储过程的参数值 cmd.Parameters["@uid"].Value = 2; // 添加存储过程中的输出参数 cmd.Parameters.Add("@name", SqlDbType.VarChar, 50); // 设置参数为output输出参数 cmd.Parameters["@name"].Direction = ParameterDirection.Output; // 执行存储过程 cmd.ExecuteReader(); // 获取执行存储过程后的输出参数 string name = cmd.Parameters["@name"].Value.ToString(); Response.Write(name); } catch (Exception ex) { Response.Write(ex.Message); if (conn.State == ConnectionState.Open) { conn.Close(); } } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } } }
发表评论
-
用.NET CORE做项目,VS里编译碰到‘。。。。包降级。。。。’错误
2018-07-02 18:00 629用.NET CORE做项目,VS里编译碰到‘。。。。包降级。 ... -
VS2017中建立ASP.NET MVC 4.0项目
2018-02-04 15:35 717新的项目需要运行在WIN2003上,又不想用ASPX了,只好 ... -
用sendcloud来发邮件
2018-02-04 12:25 442平时发验证码邮件都是用免费域名邮箱,但是有时一频繁发多了就发 ... -
asp.net 中用easyui中的treegird的简单使用
2018-02-02 11:22 367几乎每个‘数人头’项目中都会用到的功能,这里先记下来,以后直 ... -
sql server中调用c#写的dll里的方法
2018-01-12 22:05 403最近有一项目: 一超市管理系统单机版,运行在WIN20 ... -
ASP.NET MVC中切换模板页(不同目录的cshtml文件)
2017-12-26 20:42 757看来以后建立一个父类控制器还是有必要的。。。 usi ... -
微信公众号支付安卓和WP手机能支付,苹果手机支付不了的问题解决
2016-03-10 22:57 447花了几天时间,终于搞好了,代码是从官网上下的.NET DEMO ... -
VS2015预览版体验
2014-11-15 21:42 18596.NET开源了,JAVA颤抖吧 ... -
在一堆数中查询相加得某个数的组合
2012-01-17 16:03 1343如题,一个网友问的,我又去问其他的网友,再网上搜索,发贴问,最 ... -
asp.net中使用swfupload上传大文件
2012-01-12 15:44 4640花了一天多时间研究出来的,其实也就是网上下别人的代码然后 ... -
repeater控件在绑定的时候添加行号
2011-12-26 20:55 1402最好的方法当然就是在提取数据的时候连行号也一起取出来,SQL ... -
asp.net中使用MYSQL参数化的方法
2011-12-14 10:34 3372在做一个项目,ASP.NET操作MYSQL数据库的,使用参数化 ... -
去掉数字中多余的0(ASP.NET)
2011-11-16 15:08 1776有这样一个需求,见下图:具体的在ASP.NET中的实现代码如下 ... -
牛腩购物网
2011-02-12 14:11 1219牛腩购物网 最新出的视频,演示网站 http: ... -
AJAX顺序输出
2010-10-13 10:54 1341在安装大多数CMS的时候都会在安装界面上看到这样的一个效果: ... -
获取本周的周一和周日
2010-09-17 11:42 1588// 获取本周 ... -
ASP.NET弹出遮罩层示例
2010-08-03 20:31 4760从某收费项目中提取出来的,网上一高手写的JQUERY插件,作用 ... -
WebService简单示例
2010-08-03 20:30 1414记录一下,以备后用: using System; u ... -
ASP.NET中递归绑定DDL下拉控件
2010-08-03 20:26 1392做个记录,省得以后用到的时候都得再找以前写的代码,而且发现以前 ... -
刚刚找到的IP地址对应地区数据库
2010-06-15 15:35 2329项目原因,网上下载了 We7 CMS安装版,(想下载源 ...
相关推荐
总结来说,这个示例展示了如何在.NET环境中使用存储过程,特别是如何处理输出参数。理解并熟练运用这些步骤对于任何.NET开发者来说都是至关重要的,因为它涉及到数据库交互和数据获取的关键环节。通过实践和记录,...
在这个场景中,"asp.net 调用输出参数存储过程" 是一个关键知识点,意味着我们要讨论如何在 ASP.NET 中调用包含输出参数的数据库存储过程。输出参数允许存储过程将值返回给调用者,这对于传递计算结果或状态信息非常...
本教程将详细讲解如何利用存储过程在ASP.NET中实现分页功能,并提供相应的代码示例。 一、分页原理 分页的核心思想是每次只从数据库中获取一部分数据,而不是一次性加载所有数据。这可以通过设置“开始位置”(偏移...
- 设置参数:根据存储过程的输入/输出参数,使用SqlParameter对象添加到SqlCommand的Parameters集合中。 - 执行命令:调用SqlCommand对象的ExecuteNonQuery(无返回值)或ExecuteScalar(返回单个值)方法,或者...
这个示例中,我们创建了一个不返回值的存储过程,仅修改数据而无输出参数。然而,还可以根据需要创建返回值或输出参数的存储过程。例如,可以创建一个返回特定记录集的函数,或者一个通过输出参数返回计算结果的存储...
通过以上分析和示例,我们可以看到,使用ADO.NET与C# .NET调用带参数的存储过程不仅能够提高应用程序的性能,还能增强安全性,简化复杂数据处理流程。掌握这一技能,对于任何从事数据库操作和应用开发的IT专业人士来...
上述代码展示了如何在.NET中调用一个包含输入和输出参数的Oracle存储过程。需要注意的是,OracleClient要求参数名称必须与存储过程中定义的参数名称完全一致。这是OracleClient的一个限制,相比之下,使用OleDb则...
例如,在C#中,可以使用ADO.NET的SqlCommand对象来调用存储过程并获取输出参数的值: ```csharp using (SqlConnection conn = new SqlConnection("your_connection_string")) { conn.Open(); SqlCommand cmd = ...
以下是一个使用`SQLHelper`类调用带有输出参数的存储过程的示例代码片段: ```csharp using System.Data.SqlClient; public static void CallStoredProcedure() { string connectionString = "your_connection_...
ADO.NET存储过程参数生成SQL版源代码是一种用于简化数据库交互的工具,特别是在处理大量数据或执行复杂业务逻辑时,存储过程能提供更好的性能和安全性。本文将深入探讨ADO.NET、C#以及存储过程的相关知识,并结合...
本文将详细介绍一种在.NET中调用存储过程的非典型方法,通过使用ADO.NET的`OleDbCommand`对象来实现。这种方法适用于需要与SQL Server进行交互的.NET应用程序。 首先,我们需要创建一个存储过程。以下是一个名为`...
在.NET代码中,你可以调用这个存储过程并传递参数,如下所示(假设使用ADO.NET): ```csharp using (SqlConnection conn = new SqlConnection(connectionString)) { conn.Open(); SqlCommand cmd = new ...
"存储过程(增删改查)"这个文件可能包含的就是这些具体的C#或VB.NET代码示例。 总之,.NET中的存储过程使用不仅可以提升数据库操作的效率,还可以增强代码的可读性和可维护性。通过合理设计和应用存储过程,开发者...
下面是一个简化的代码示例,展示了如何使用FFmpeg进行转换: ```csharp using System.Diagnostics; public void ConvertMp4ToM3u8(string inputFilePath, string outputFolderPath) { var processStartInfo = new...
ASP.Net开发中,SQL存储过程扮演着重要的角色,尤其是在大型项目中,它们有助于提升数据库的安全性和SQL代码的执行效率。本文将深入探讨ASP.Net中如何利用SQL存储过程,并提供一些基础示例。 首先,了解存储过程的...
本文将深入探讨如何在ASP.NET环境中调用Oracle数据库中的存储过程,并展示一个具体的示例。 首先,存储过程是预编译的SQL语句集合,它们在数据库服务器上执行,而不是在应用程序中。这有助于减少网络流量,因为只需...
如果你的存储过程有输出参数或返回值,你需要使用`OleDbParameter`对象设置适当的属性,如`Direction`。 然后,执行存储过程并获取结果集: ```vbnet Dim reader As OleDbDataReader = command.ExecuteReader() ...
以下是一个简单的示例,演示如何在VB.Net中调用存储过程: ```vbnet Imports System.Data.SqlClient ' 创建数据库连接字符串 Dim connectionString As String = "Server=myServerAddress;Database=myDataBase;User...
本文将基于提供的文件信息,深入探讨如何利用ADO.NET框架调用存储过程来修改数据,重点解析创建存储过程、使用SqlDataAdapter以及处理输出参数的具体方法。 ### 创建存储过程 首先,我们关注存储过程的创建。示例...
存储过程是预编译的SQL代码集合,存储在数据库中,可以接受输入参数,返回输出参数和结果集。在.NET中,我们通常使用SqlConnection对象连接数据库,SqlCommand对象执行SQL命令(包括存储过程),并使用SqlParameter...