C# 數據庫操作DbCommand、GetStoredProcCommand、GetSqlStringCommand


原文: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#

  1. Database db = DatabaseFactory.CreateDatabase();  
  2. string sqlCommand = "Select CustomerID, LastName, FirstName From Customers";  
  3. DbCommand dbCommand = db.GetSqlStringCommand(sqlCommand); 

用於存儲過程的 DbCommand 對象

要執行存儲過程,必須使用 GetStoredProcCommand 方法來創建 DbCommand 對象。要執行存儲過程的名稱在方法調用時做為一個參數傳遞。

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

C#

  1. Database db = DatabaseFactory.CreateDatabase();  
  2. 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();

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM