.NET用使用存储过程获取输出参数的代码示例!
来源:互联网 发布:大学生兼职软件缺点 编辑:程序博客网 时间:2024/05/17 06:20
在网上也找到许多关于.NET中使用存储过程获取输出参数的代码,但怎么看怎么都是记不住,还是自己亲自实践一遍后再记录下来,这样才能记得住,必竟自己做过的东西是比较难忘记的!!!
步骤如下:
①建立数据库logintest,在数据库中建立表User.
向建立的表中添加几条测试数据.
②在数据库中建立存储过程:
SQL code
USE[logintest]GO-- =============================================-- Author: 牛腩-- Create date: 2008-10-21 14:01-- Description: 通过传入的uid获取用户姓名-- =============================================SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATEPROCEDURE[dbo].[GetUNameById]@uidint,@namevarchar(50) outputASBEGIN select@name=uname from[User]where uid=@uidEND
③在VS中建立一个测试页面ProcTest.aspx,在ProcTest.aspx.cs中导入命名空间
C# code
using System.Data;
using System.Data.SqlClient;
④在Page_Load方法里写入如下代码:
C# code
// 建立连接字符串,在正式项目中可放在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的源码:
C# code
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;publicpartialclass ProcTest : System.Web.UI.Page{ protectedvoid 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用使用存储过程获取输出参数的代码示例!
- .NET用使用存储过程获取输出参数的代码示例
- .NET用使用存储过程获取输出参数的代码示例!
- asp.net获取存储过程的输出参数
- 获取存储过程输出参数
- ASP.net:调用存储过程 -- 代码取不到输出(Output)参数值 - 因ExecuteReader不当使用
- mssql使用输出参数的存储过程
- 使用带有输出参数的存储过程
- C#中如何获取存储过程的输出参数值
- C#中如何获取存储过程的输出参数值
- C#中如何获取存储过程的输出参数值
- 使用ADO.NET对象调用存储过程的输入和输出参数
- ASP.Net 调用输出参数的存储过程
- asp.net 调用带有输出参数的存储过程
- Ado.Net调用带输入,输出参数的存储过程
- Java代码调用数据库带输出参数的存储过程
- Hibernate 调用存储过程 获取输出参数
- SqlServer2000查询分析器中获取带输出参数的存储过程的输出参数
- cmd命令大全/cmd命令提示符大全
- C++学习总结
- Android正则表达式大全
- 性能调优攻略
- STL中map用法详解
- .NET用使用存储过程获取输出参数的代码示例!
- 基础总结篇之五:BroadcastReceiver应用详解
- 新建 ProvinceCity用户控件。在该控件 中增加一个Button1按钮。在Demo1.aspx页面中引用 ProvincCity控件。并且加入button1和Lable1控件。当点击Demo1
- 百度Android开发面试题
- 如何在代理环境下发送邮件?——C#实现Socket代理方式的邮件发送
- Arduino Smart Home kit智能家居语音识别初级套件
- 完美企业网站的101项指标 - 概述
- PTN技术
- 循环删除集合