中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中怎么調用SQL存儲過程

發布時間:2021-06-24 16:25:35 來源:億速云 閱讀:281 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關C#中怎么調用SQL存儲過程,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

C#調用SQL存儲過程理論知識

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

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

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

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

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

2、獲得存儲過程輸出參數的值:

定義sql的參數,指定類型是輸出

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

獲得輸出參數的值

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

總結,關鍵地方就是指明參數的Direction 屬性,使用ParameterDirection來指定,可以指定4種類型,

輸入,

輸出,

既是輸入又是輸出,

接受return

C#調用SQL存儲過程示例演示

/**  * 存儲過程  *    create procedure queryStuNameById    (     @stuId varchar(10),--輸入參數     @stuName varchar(10) output --輸出參數    )   as   select @stuName=stuName from stuInfo where stuId=@stuId  *  */
using System;  using System.Collections.Generic;  using System.Text;  using System.Data;  using System.Data.SqlClient;  namespace StoreProduceTest  {      public class Program      {           static void Main(string[] args)          {              Operater op = new Operater();              string name = op.QueryStuNameById("1234");              Console.WriteLine(string.Format("學號為1234的學生的姓名為{0}", name));          }      }      public class Operater      {          private string ConStr = "server=.;database=User;uid=sa;pwd=1234";          private SqlConnection sqlCon = null;          private SqlCommand sqlComm = null;          SqlDataReader dr = null;          public string QueryStuNameById(string Id)          {              string name = "";              try              {                  using (sqlCon = new SqlConnection(ConStr))                  {                      sqlCon.Open();                      sqlComm = new SqlCommand("queryStuNameById", sqlCon);                      //設置命令的類型為存儲過程                      sqlComm.CommandType = CommandType.StoredProcedure;                      //設置參數                      sqlComm.Parameters.Add("@stuId", SqlDbType.VarChar);                      //注意輸出參數要設置大小,否則size默認為0,                      sqlComm.Parameters.Add("@stuName", SqlDbType.VarChar, 10);                      //設置參數的類型為輸出參數,默認情況下是輸入,                      sqlComm.Parameters["@stuName"].Direction = ParameterDirection.Output;                      //為參數賦值                      sqlComm.Parameters["@stuId"].Value = "1234";                      //執行                      sqlComm.ExecuteNonQuery();                      //得到輸出參數的值,把賦值給name,注意,這里得到的是object類型的,要進行相應的類型輪換                      name = sqlComm.Parameters["@stuName"].Value.ToString();                  }              }              catch (Exception ex)              {                  Console.WriteLine(ex.ToString());              }              return name;          }      }  }

看完上述內容,你們對C#中怎么調用SQL存儲過程有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

卢氏县| 安新县| 运城市| 宝应县| 天全县| 滕州市| 芮城县| 稻城县| 五常市| 喜德县| 新巴尔虎右旗| 遵化市| 都江堰市| 盖州市| 宜章县| 阿坝| 闸北区| 永丰县| 宁远县| 小金县| 新化县| 无棣县| 万安县| 遂川县| 尚义县| 科技| 竹北市| 米林县| 皋兰县| 基隆市| 仙桃市| 磐安县| 太白县| 哈尔滨市| 墨脱县| 东乌珠穆沁旗| 莱阳市| 和田市| 浙江省| 仁寿县| 明星|