自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#調(diào)用SQL存儲過程示例演示

開發(fā) 后端
本文介紹了C#中調(diào)用SQL存儲過程,帶輸入輸出參數(shù)的例子。

C#調(diào)用SQL存儲過程理論知識

下面的CmdObj.是定義的SqlCommand對象

1、獲得存儲過程中return語句返回的整個存儲過程函數(shù)的返回值:

//獲得存儲過程return的值,定義一個參數(shù),指明其作用是接受return的值

    CmdObj.Parameters.Add("RETURN_VALUE", SqlDbType.Int).Direction =ParameterDirection.ReturnValue;

通過獲取該參數(shù)的方式最終獲得return返回的值

int reValue = int.Parse(CmdObj.Parameters["RETURN_VALUE"].Value.ToString());

2、獲得存儲過程輸出參數(shù)的值:

定義sql的參數(shù),指定類型是輸出

CmdObj.Parameters.Add("@outValue", SqlDbType.VarChar).Direction =ParameterDirection.Output;

獲得輸出參數(shù)的值

string outValue = CmdObj.Parameters["@outValue"].Value.ToString();

總結(jié),關(guān)鍵地方就是指明參數(shù)的Direction 屬性,使用ParameterDirection來指定,可以指定4種類型,

輸入,

輸出,

既是輸入又是輸出,

接受return

C#調(diào)用SQL存儲過程示例演示

  1. /**  
  2. * 存儲過程  
  3. *   
  4.  create procedure queryStuNameById  
  5.   (  
  6.    @stuId varchar(10),--輸入?yún)?shù)  
  7.    @stuName varchar(10) output --輸出參數(shù)  
  8.   )  
  9.  as 
  10.   select @stuName=stuName from stuInfo where stuId=@stuId  
  11. *  
  12. */  
  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Text;  
  4. using System.Data;  
  5. using System.Data.SqlClient;  
  6. namespace StoreProduceTest  
  7. {  
  8.     public class Program  
  9.     {  
  10.  
  11.         static void Main(string[] args)  
  12.         {  
  13.             Operater op = new Operater();  
  14.             string name = op.QueryStuNameById("1234");  
  15.             Console.WriteLine(string.Format("學(xué)號為1234的學(xué)生的姓名為{0}"name));  
  16.         }  
  17.     }  
  18.     public class Operater  
  19.     {  
  20.         private string ConStr = "server=.;database=User;uid=sa;pwd=1234";  
  21.         private SqlConnection sqlCon = null;  
  22.         private SqlCommand sqlComm = null;  
  23.         SqlDataReader dr = null;  
  24.         public string QueryStuNameById(string Id)  
  25.         {  
  26.             string name = "";  
  27.             try  
  28.             {  
  29.                 using (sqlCon = new SqlConnection(ConStr))  
  30.                 {  
  31.                     sqlCon.Open();  
  32.                     sqlComm = new SqlCommand("queryStuNameById", sqlCon);  
  33.                     //設(shè)置命令的類型為存儲過程  
  34.                     sqlComm.CommandType = CommandType.StoredProcedure;  
  35.                     //設(shè)置參數(shù)  
  36.                     sqlComm.Parameters.Add("@stuId", SqlDbType.VarChar);  
  37.                     //注意輸出參數(shù)要設(shè)置大小,否則size默認(rèn)為0,  
  38.                     sqlComm.Parameters.Add("@stuName", SqlDbType.VarChar, 10);  
  39.                     //設(shè)置參數(shù)的類型為輸出參數(shù),默認(rèn)情況下是輸入,  
  40.                     sqlComm.Parameters["@stuName"].Direction = ParameterDirection.Output;  
  41.                     //為參數(shù)賦值  
  42.                     sqlComm.Parameters["@stuId"].Value = "1234";  
  43.                     //執(zhí)行  
  44.                     sqlComm.ExecuteNonQuery();  
  45.                     //得到輸出參數(shù)的值,把賦值給name,注意,這里得到的是object類型的,要進(jìn)行相應(yīng)的類型輪換  
  46.                     name = sqlComm.Parameters["@stuName"].Value.ToString();  
  47.                 }  
  48.             }  
  49.             catch (Exception ex)  
  50.             {  
  51.                 Console.WriteLine(ex.ToString());  
  52.             }  
  53.             return name;  
  54.         }  
  55.     }  
  56. }  
  57.  

C#調(diào)用SQL存儲過程就給大家演示到這里,希望對大家有所幫助。

 

【編輯推薦】

  1. C# Thread類的應(yīng) 用
  2. C#線程:BeginInvoke和EndInvoke方法
  3. 學(xué)習(xí)C#:Attribute與Property
  4. C#編碼標(biāo)準(zhǔn)66條
  5. C#委托事件及自定義事件的處理
責(zé)任編輯:book05 來源: cnblogs
相關(guān)推薦

2011-08-22 10:15:39

數(shù)據(jù)庫存儲過程

2009-08-17 18:30:29

C# SQL Serv

2010-04-16 11:22:08

Oracle存儲過程

2011-08-16 16:59:58

PLSQL分頁存儲過程Java

2010-07-08 17:15:04

SQL Server存

2009-08-13 17:58:34

C#存儲過程

2010-09-09 09:49:18

SQL函數(shù)存儲過程

2009-08-04 10:20:22

C#源碼存儲過程

2010-11-12 09:46:55

Sql Server存

2009-08-04 10:29:06

在C#中使用存儲過程

2009-08-13 18:26:35

C#繼承構(gòu)造函數(shù)

2009-10-23 11:31:05

CLR Via C#調(diào)

2009-08-07 03:47:00

2011-08-12 11:22:53

Oracle存儲過程Java

2011-06-17 17:37:16

JavaSQL Server

2012-05-10 11:17:23

JavaSQL Server

2010-01-22 16:48:54

VB.NET調(diào)用SQL

2010-10-09 17:08:15

MySQL存儲過程

2009-08-18 10:17:25

C#枚舉類型

2010-06-02 16:49:24

MySQL存儲過程
點贊
收藏

51CTO技術(shù)棧公眾號