InfoCommand使用存储过程.doc.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
InfoCommand使用存储过程.doc.doc

InfoCommand使用存儲過程 在EEP2006中的InfoCommand還提供了對存儲過程的處理。在用InfoCommand調用存儲過程時的用法是通過CallMethod來實現的。這裏將分別 利用存儲過程進行統計,並將統計結果顯示出來。 這個例子將會使用Northwind中名為SalesByCategory的存儲過程,按User輸入的產品類別的名稱和要統計的年份,條件統計該年該類各產品的銷售總量,並將結果顯示出來。 在Server端增加一個InfoCommand,各屬性設定如圖: 點擊InfoParameters屬性的編輯框,在其中增加2個參數項,各參數設定如圖。其中InfoDbType以及ParameterName的設定,都是存儲過程中設定的內容。Direction屬性是設定該參數是輸入參數還是輸出參數。 在ServiceManager中增加一個Method定義,設定內容如圖。 在程式編輯器中增加如下程式: public object SalesByCategory(object[] objParam) { //開啟資料連接 IDbConnection conn = cmdSalesByCategory.Connection; conn.Open(); //設定輸入參數的值 cmdSalesByCategory.InfoParameters[0].Value = objParam[0]; cmdSalesByCategory.InfoParameters[1].Value = objParam[1]; //取得統計的結果,並將結果返回 DataSet ds = cmdSalesByCategory.ExecuteDataSet(); return new object[] { 0, ds.Tables[0] }; } Build好Server端的dll,並確定該dll已經在EEPNetServer的Package Manager中已經增加進去。 在Client端作一個輸入統計條件及顯示結果的Form。效果如下圖。 其中,InfoRefVal的設定如下圖,InfoComboBox(命名為cbYear)的設定只是在Items屬性中增加了3個年份。InfoRefvalBox(命名為rvbCategories rvb)只需設定RefVal的屬性為rvCategories。最下方為一個InfoDataGridView(命名為idgStat),不需要設定。 在Button的Click事件中,增加如下程式: private void button1_Click(object sender, EventArgs e) { //呼叫S005上的Method(SalesByCategory),參數為類別名稱和統計年份 object[] ret = CliUtils.CallMethod(S005, SalesByCategory, new object[] { rvbCategories.TextBoxSelectedValue, cbYear.Text }); //如果執行正確,則將結果關聯到InfoDataGridView上,顯示出來 if (ret[0].ToString() == 0) idgStat.DataSource = ret[1]; } Build好Client端的dll。運行,查看結果。 注意:因資料表中只有1996-1998年的資料,所以該存儲過程已有所處理,傳入的年份如果不在其中,則固定統計1998年資料,在測試看結果時,請注意! 利用存儲過程計算,並將計算結果回傳。 這是一個既有輸入參數,又有回傳參數的例子,需要新增一個存儲過程,這個存儲過程是統計某段時間範圍內每天的銷售金額,並回傳一個總銷售金額。 在NorthWind中執行下列Sql語句,增加一個存儲過程,這個存儲過程是在NorthWind原有的存儲過程“Sales by Year”的基礎上,增加一個回傳參數Amount,統計該時間段總銷售金額; create procedure Sales by Year2 @Beginning_Date DateTime, @Ending_Date DateTime, @Amount D

文档评论(0)

170****0532 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8015033021000003

1亿VIP精品文档

相关文档