您的位置:首页 > 数据库

GetStoredProcCommand和GetSqlStringCommand的区别

2016-12-27 17:41 351 查看
原文:http://www.ithao123.cn/content-4004602.html
http://hi.baidu.com/847270942/blog/item/c224dd557ff7455d574e0072.html
数据访问应用程序块提供了获取 ADO.NET DbCommand 对象的的统一方法。应用程序块的数据访问方法包含了接受 DbCommand 对象的重载。如果用 DbCommand 对象来使用重载,在调用存储过程时将可以进行更多的控制。例如,如果使用 DbCommand 对象,就可以使用在输出参数中返回多个结果的存储过程。另外,DbCommand 对象允许指定存储过程的超时值。

创建 DbCommand 对象的方法分为二种类型:

表示存储过程调用的那些方法(例如,GetCustomers)

表示 SQL 文本命令的那些方法(例如,Select CustomerID, Fullname From Customers )

调用的获取 DbCommand 对象的方法由是要执行内联的 SQL 还是调用存储过程来决定。用于存储过程的创建 DbCommand 对象的方法还提供参数缓存。关于参数缓存的更多信息,请参见处理参数。

所有 DbCommand 对象的创建都使用 Database 类的方法,这些方法如下:

GetStoredProcCommand。此方法用于存储过程命令。

GetSqlStringCommand。此方法用于 SQL 文本命令。 二个方法都返回一个 DbCommand 对象。

用于 SQL 语句的 DbCommand对象

使用 GetSqlStringCommand 方法创建用于内联 SQL 语句的 DbCommand 对象。特定的 SQL 命令在方法调用时做为一个参数进行传递。

下列代码展示了如何使用 GetSqlStringCommand

C#

Database db = DatabaseFactory.CreateDatabase();

string sqlCommand = "Select CustomerID, LastName, FirstName From Customers";

DbCommand dbCommand = db.GetSqlStringCommand(sqlCommand);

用于存储过程的 DbCommand 对象

要执行存储过程,必须使用 GetStoredProcCommand 方法来创建 DbCommand 对象。要执行存储过程的名称在方法调用时做为一个参数传递。

下列代码展示了如何使用 GetStoredProcCommand

C#

Database db = DatabaseFactory.CreateDatabase();

DbCommand dbCommand = db.GetStoredProcCommand("GetProductsByCategory");
http://hi.baidu.com/847270942/blog/item/c224dd557ff7455d574e0072.html

DbCommand 与SqlCommand的区别是什么啊,急,都不知道用哪个好

DbParameter是sqlParmeter的基类,
sqlParameter针对sqlserver

DbParameter是父类,而且是abstract的,不能实例化
就是不能:DbParameter a = new DbParameter();

而SqlParameter是子类,可以实例化

可以:
DbParameter a = new SqlParameter();
或者:
SqlParameter a = new SqlParameter();GetStoredProcCommand
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐