上一節講述的sql語句的執行,本節將講述的是存儲過程的執行。
執行存儲過程是通過FromProc方法來完成的。
執行無參數存儲過程如下:
DbSession.Default.FromProc("Ten Most Expensive Products").ToDataTable();
"Ten Most Expensive Products"就是存儲過程名稱。
執行帶參數的存儲過程:
DbSession.Default.FromProc("Sales by Year")
.AddInParameter("Beginning_Date", DbType.DateTime, "1995-01-01")
.AddInParameter("Ending_Date", DbType.DateTime, "1996-12-01")
.ToDataTable();
數據庫中該存儲過程
create procedure "Sales by Year"
@Beginning_Date DateTime, @Ending_Date DateTime AS
SELECT Orders.ShippedDate, Orders.OrderID, "Order Subtotals".Subtotal, DATENAME(yy,ShippedDate) AS Year
FROM Orders INNER JOIN "Order Subtotals" ON Orders.OrderID = "Order Subtotals".OrderID
WHERE Orders.ShippedDate Between @Beginning_Date And @Ending_Date
GO
有兩個參數,分別是Beginning_Date和Ending_Date。
存儲過程和sql語句的執行類似,不過存儲過程多了參數,就是會有輸入輸出參數。
通過
AddInputOutputParameter 方法添加輸入輸出參數
AddOutParameter 方法添加輸出參數
AddReturnValueParameter 方法添加返回參數
存儲過程的執行也是很簡單的。
下一節將講述DbSession的其他簡單輔助方法。