sql server中编写一个存储过程:

  1. CREATE PROCEDURE ProGetPWD
  2. @username varchar(20),
  3. @password varchar(20) OUTPUT
  4. AS
  5. BEGIN
  6. SELECT @password = password
  7. FROM Users
  8. WHERE username = @username
  9. END

--------------------------

下面是.NET中调用存储过程的方法:

  1. string strConnection = "user id=sa;password=sa;initial catalog=MyTest;Server=YHB;Connect Timeout=30";
  2. using (SqlConnection conn = new SqlConnection(strConnection))
  3. {
  4. conn.Open();
  5. using (SqlCommand sqlComm = conn.CreateCommand())
  6. {
  7. //设置要调用的存储过程的名称
  8. sqlComm.CommandText = "GetPWD";
  9. //指定SqlCommand对象传给数据库的是存储过程的名称而不是sql语句
  10. sqlComm.CommandType = CommandType.StoredProcedure;
  11. SqlParameter username = sqlComm.Parameters.Add(new SqlParameter("@username", SqlDbType.VarChar, 20));
  12. //指明"@username"是输入参数
  13. username.Direction = ParameterDirection.Input;
  14. //为“@username”参数赋值
  15. username.Value = this.txt_username.Text;
  16. SqlParameter password = sqlComm.Parameters.Add(new SqlParameter("@password", SqlDbType.VarChar, 20));
  17. //指定"@password"为输出参数
  18. password.Direction = ParameterDirection.Output;
  19. //执行
  20. sqlComm.ExecuteNonQuery();
  21. //得到输出参数的值,把赋值给name,注意,这里得到的是object类型的,要进行相应的类型轮换
  22. string passwrod = Convert.ToString(sqlComm.Parameters["@password"].Value);
  23. MessageBox.Show(passwrod);
  24. }
  25. }

c#调用带输出参数的存储过程的更多相关文章

  1. C# 调用带输入输出参数的存储过程

    //调用存储过程执行类似于2//select count(*) from userinfo where username=username and pwd=pwd and grade=grade3// ...

  2. Oracle使用jdbc调用带游标参数的存储过程

    package com.jckb.procedure; import java.sql.CallableStatement; import java.sql.Connection; import ja ...

  3. sqlserver 带输出参数的存储过程的创建与执行

    创建 use StudentManager go if exists(select * from sysobjects where name='usp_ScoreQuery4') drop proce ...

  4. sqlserver 带输出参数的存储过程

    --创建存储过程create procedure proc_stu@sname varchar(20),@pwd varchar(50),@flag bit outputasif exists(sel ...

  5. DATASNAP中间件调用带OUTPUT参数的存储过程

    服务端: function TServerMethods1.spExecOut(funcId, sqlId, inParams: OleVariant): OleVariant;var d: Tfrm ...

  6. SqlDataReader执行带输出参数存储过程 错误分析

    在上一篇随笔:SqlDataReader读取分页数据,pageCount你是肿么了? 遇到了很让人头疼的问题:SqlDataReader执行带输出参数的存储过程总是获取不到输出参数的正确值.这里将解决 ...

  7. C#调用存储过程带输出参数或返回值

    CREATE PROCEDURE [dbo].[GetNameById] @studentid varchar(8), @studentname nvarchar(50) OUTPUT AS BEGI ...

  8. [转] ADO.NET调用存储过程带输出参数或返回值

    CREATE PROCEDURE [dbo].[GetNameById] @studentid varchar(), @studentname nvarchar() OUTPUT AS BEGIN S ...

  9. EF执行存储过程(带输出参数)

    1.不含动态sql.带输出参数存储过程调用实例 1.存储过程代码:   2.EF自动生成代码(包括对应ObjectResult的实体模型): 3.调用存储过程代码实例: 总结: ObjectParam ...

随机推荐

  1. JS一行代码,生成一个16进制随机颜色,简单粗暴。

    var color = '#'+ Math.random().toString(16).substr(-6); document.body.style.backgroundColor = color; ...

  2. LeetCode——2. Add Two Numbers

    一.题目链接:https://leetcode.com/problems/add-two-numbers 二.题目大意: 给定两个链表,每个链表表示一个非负数,不过数字的顺序是反过来存储的,要求给出这 ...

  3. C++进阶--自定义new handler

    //############################################################################ // 自定义new handler /* ...

  4. QT中实现应用程序的单例化

    一介绍 通过编写一个QSingleApplication类,来实现Qt程序的单例化,原文的作者是在Windows Vista + Qt4.4 下实现的,不过应用在其他平台上是没问题的.(本文是我在ht ...

  5. Java-Runoob-高级教程-实例-时间处理:01. Java 实例 - 格式化时间(SimpleDateFormat)

    ylbtech-Java-Runoob-高级教程-实例-时间处理:01. Java 实例 - 格式化时间(SimpleDateFormat) 1.返回顶部 1. Java 实例 - 格式化时间(Sim ...

  6. Android 中Jackson的简单使用

    第一步:下载Jackson的jar包http://pan.baidu.com/s/1qXHwtQ0 第二步:在gradle中导入jar包 第三步:创建ObjectMapper对象的单例 Jackson ...

  7. Making a view in a listview invisible android

    问题: I have a ListView that's using a custom adapter. I want to dynamically add/remove items from the ...

  8. 代码整洁之道Clean Code 读后感After Reading

    1.有意义的命名 名副其实,避免误导 做有意义的区分,简单明了2.函数 短小,职责单一 别重复自己3.注释 用代码来阐述 可怕的废话4.格式 垂直格式,垂直距离,空范围 横向格式,水平对齐,缩进5.错 ...

  9. (转)开源OpenWRT知识

    原博地址:http://www.thinkingquest.net/article/466 我们都需要使用google提供的搜索,gmail等优质服务.但是由于方墙的存在,使得大家各自搞各自的FQ办法 ...

  10. WebBrowser JS回调delphi的方法 (简单通用)

    上一部分讲了Delphi根据方法名调用方法,这一部分还有用到,接着上一章: [主要原理] 通过TEmbeddedWB控件的OnShowMessage事件捕获弹窗来实现,弹窗时定义方法名和参数,在捕获方 ...