程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> c#調用帶輸出參數的存儲過程,

c#調用帶輸出參數的存儲過程,

編輯:C#入門知識

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.             }  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved