数据库组件 Hxj.Data (八)(存储过程篇)
2010-01-25 17:01
411 查看
上一节讲述的sql语句的执行,本节将讲述的是存储过程的执行。
执行存储过程是通过FromProc方法来完成的。
执行无参数存储过程如下:
[/code]
"Ten Most Expensive Products"就是存储过程名称。
执行带参数的存储过程:
[/code]
数据库中该存储过程
有两个参数,分别是Beginning_Date和Ending_Date。
存储过程和sql语句的执行类似,不过存储过程多了参数,就是会有输入输出参数。
通过
AddInputOutputParameter 方法添加输入输出参数
AddOutParameter 方法添加输出参数
AddReturnValueParameter 方法添加返回参数
返回参数值,示例如下:
其中GetReturnValues()方法就是回去返回值。
存储过程的执行也是很简单的。
下一节将讲述DbSession的其他简单辅助方法。
执行存储过程是通过FromProc方法来完成的。
执行无参数存储过程如下:
[code]DbSession.Default.FromProc("Ten Most Expensive Products").ToDataTable();
[/code]
"Ten Most Expensive Products"就是存储过程名称。
执行带参数的存储过程:
[code]DbSession.Default.FromProc("Sales by Year") .AddInParameter("Beginning_Date", DbType.DateTime, "1995-01-01") .AddInParameter("Ending_Date", DbType.DateTime, "1996-12-01") .ToDataTable();
[/code]
数据库中该存储过程
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 方法添加返回参数
返回参数值,示例如下:
ProcSection proc = DbSession.Default.FromProc("testoutstore") .AddInParameter("in1", System.Data.DbType.Int32, 1) .AddOutParameter("out1", System.Data.DbType.Int32) .AddOutParameter("out2", System.Data.DbType.String,100); proc.ExecuteNonQuery(); Dictionary<string, object> returnValue = proc.GetReturnValues(); foreach (KeyValuePair<string, object> kv in returnValue) { Response.Write("ParameterName:" + kv.Key + " ;ReturnValue:" + Convert.ToString(kv.Value)); Response.Write("<br />"); }
其中GetReturnValues()方法就是回去返回值。
存储过程的执行也是很简单的。
下一节将讲述DbSession的其他简单辅助方法。
相关文章推荐
- 数据库组件 Hxj.Data (八)(存储过程篇)
- 数据库组件 Hxj.Data (二十二) (缓存)
- 数据库组件 Hxj.Data (三十)(Asp.Net 页面自动赋值与取值)
- 数据库组件 Hxj.Data (六)(删除操作篇)
- 数据库组件 Hxj.Data (二十六)(Oracle 配置)
- 数据库组件 Hxj.Data (十六) (查询的字段)
- 数据库组件 Hxj.Data (二十一) (ToScalar<TResult>)
- 数据库组件 Hxj.Data (二十五)(数据库连接配置 - connectionStrings节点)
- 数据库组件 Hxj.Data (三十一)(MySQL篇)
- 数据库组件 Hxj.Data (一)(介绍篇)
- 数据库组件 Hxj.Data (三)(查询操作篇)
- 数据库组件 Hxj.Data (四)(添加操作篇)
- 数据库组件 Hxj.Data (二十八)(事务中的查询,查询字段字中的子查询,WhereClip的隐式转换)
- 数据库组件 Hxj.Data (十一) (where条件)
- 数据库组件 Hxj.Data (二十五)(数据库连接配置 - connectionStrings节点)
- 数据库组件 Hxj.Data (三)(查询操作篇)
- 数据库组件 Hxj.Data (二十三) (自定义缓存)
- 数据库组件 Hxj.Data (十七) (事务)
- 数据库组件 Hxj.Data (二十六)(Oracle 配置)
- 数据库组件 Hxj.Data (九) (DbSession的其他介绍)