zoukankan      html  css  js  c++  java
  • c#调用带输出参数的存储过程

    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.   
    12.                     SqlParameter username = sqlComm.Parameters.Add(new SqlParameter("@username", SqlDbType.VarChar, 20));  
    13.                     //指明"@username"是输入参数  
    14.                     username.Direction = ParameterDirection.Input;  
    15.                     //为“@username”参数赋值  
    16.                     username.Value = this.txt_username.Text;  
    17.   
    18.                     SqlParameter password = sqlComm.Parameters.Add(new SqlParameter("@password", SqlDbType.VarChar, 20));  
    19.                     //指定"@password"为输出参数  
    20.                     password.Direction = ParameterDirection.Output;  
    21.                     //执行  
    22.                     sqlComm.ExecuteNonQuery();  
    23.                     //得到输出参数的值,把赋值给name,注意,这里得到的是object类型的,要进行相应的类型轮换  
    24.                     string passwrod = Convert.ToString(sqlComm.Parameters["@password"].Value);  
    25.                     MessageBox.Show(passwrod);  
    26.                 }  
    27.             }  
  • 相关阅读:
    巨人的崛起 Android操作系统发展历程
    iPhone 4S定位功能加强 支持GLONASS系统
    android子线程更新UI,与主Thread一起工作
    什么在阻碍移动互联网的普及?
    WEB.CONFIG 配置详解
    解决在aspx页面上进行传中文参数时会出现乱码问题
    VS2005水晶报表注册码
    windows2003应用程序池假死的问题
    浅谈ASP.NET内部机制
    合理建立数据库索引
  • 原文地址:https://www.cnblogs.com/lihaishu/p/4817098.html
Copyright © 2011-2022 走看看