• 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.             }  
  • 相关阅读:
    map集合的见解、排序
    java mysql 数据类型对照
    spring 通过@Value 获取properties文件中设置了属性 ,与@Value # 和$的区别
    nginx中的超时设置,请求超时、响应等待超时等
    Linux配置多个Tomcat同时运行
    Socket TCP Server一个端口可以有多少个长连接?受到什么影响?linux最大文件句柄数量总结
    tomcat关闭后线程依然运行解决办法
    守护线程与非守护线程的区别
    SSM整合——spring4.*配置案例
    SSM事务——事务回滚如何拿到返回值
  • 原文地址:https://www.cnblogs.com/lihaishu/p/4817098.html
Copyright © 2020-2023  润新知