国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

C#調用存儲過程簡單完整例子

2024-07-21 02:26:36
字體:
來源:轉載
供稿:網友


create proc p_test
@name varchar(20),
@rowcount int output
as
begin
 select * from t_customer where [email protected]
 set  @[email protected]@rowcount
end
go
----------------------------------------------------------------------------------------
--存儲過程調用如下:
----------------------------------------------------------------------------------------
declare @i int
exec p_test 'a',@i output
select @i
--結果
/*
name       address    tel                 
---------- ---------- --------------------
a          address    telphone
(所影響的行數為 1 行)

           
-----------
1

(所影響的行數為 1 行)
*/
----------------------------------------------------------------------------------------
--dotnet 部分(c#)
--webconfig 文件:
----------------------------------------------------------------------------------------
......
 </system.web>
 
   <!-- 數據庫連接字符串
   -->
 <appsettings>
      <add key="connectstring" value="server=(local);user id=sa;password=;database=test" />
</appsettings>
  
</configuration>
----------------------------------------------------------------------------------------
--c#代碼:(用到兩個測試控件,datagrid1(用于顯示綁定結果集合),lable(用于顯示存儲過程返回單值)
----------------------------------------------------------------------------------------
//添加數據庫引用
using system.data.sqlclient;
......
 private void page_load(object sender, system.eventargs e)
  {
   // 在此處放置用戶代碼以初始化頁面
   string dbconnstr;
   dataset mydataset=new dataset();
   system.data.sqlclient.sqldataadapter dataadapter=new system.data.sqlclient.sqldataadapter();
   dbconnstr=system.configuration.configurationsettings.appsettings["connectstring"];
   system.data.sqlclient.sqlconnection myconnection = new system.data.sqlclient.sqlconnection(dbconnstr);
   if (myconnection.state!=connectionstate.open)
   {
    myconnection.open();
   }  
   system.data.sqlclient.sqlcommand mycommand = new system.data.sqlclient.sqlcommand("p_test",myconnection);
   mycommand.commandtype=commandtype.storedprocedure;
   //添加輸入查詢參數、賦予值
   mycommand.parameters.add("@name",sqldbtype.varchar);
   mycommand.parameters["@name"].value ="a";

   //添加輸出參數
   mycommand.parameters.add("@rowcount",sqldbtype.int);
   mycommand.parameters["@rowcount"].direction=parameterdirection.output;


   mycommand.executenonquery();
   dataadapter.selectcommand = mycommand;

   if (mydataset!=null)
   {
     dataadapter.fill(mydataset,"table");
   }
  
   datagrid1.datasource=mydataset;
   datagrid1.databind();
   //得到存儲過程輸出參數
   label1.text=mycommand.parameters["@rowcount"].value.tostring();

   if (myconnection.state == connectionstate.open)
   {
    myconnection.close();
   }

  }
----------------------------------------------------------------------------------------
運行以上代碼即可(返回記錄集合和存儲過程返回值)


 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 义乌市| 临安市| 巴林左旗| 兴隆县| 张家口市| 镇巴县| 南乐县| 黄骅市| 原阳县| 盐池县| 天镇县| 江永县| 会理县| 兴义市| 嵩明县| 海兴县| 横山县| 吐鲁番市| 乡宁县| 黄大仙区| 阿图什市| 宾川县| 娄底市| 抚宁县| 旺苍县| 长治市| 溧阳市| 深圳市| 拉萨市| 天峻县| 平度市| 万州区| 项城市| 马尔康县| 察隅县| 富锦市| 金川县| 沁水县| 利川市| 奉节县| 永善县|