快速掌握ADO.NET SqlCommand對象的使用
ADO.NET經過長時間的發展,很多用戶都很了解ADO.NET SqlCommand對象了,這里我發表一下個人理解,和大家討論討論。ADO.NET提供了多種對象模型,比較典型的以下有五種,它們全部歸類在System.Data.SqlClient名稱空間下。
ADO.NET SqlCommand對象
在ADO.NET中,有兩種操作數據庫的方式:1.無連接的方式;2.保持連接的方式。
不論采用哪種方式,都可以通過SqlCommand對象提供的方法傳遞對數據庫操作的命令,并返回命令執行的結果。在保持連接的方式下操作數據庫的一般步驟為:創建SqlConnection的實例;.創建SqlCommand的實例;打開連接;執行命令;關閉連接。
#T#ADO.NET SqlCommand對象提供了多種完成對數據庫操作的方法。常用的有ExecuteNonQuery該方法執行SQL語句的結果,但不返回命令執行的表數據,僅返回操作所影響的行數。ExecuteReader,ExecuteReader方法提供了只向前的、順序的快速讀取數據庫中數據的方法。該方法根據提供的SELECT語句,返回一個可以順序讀取的SqlDataReader對象,編程者可以使用Read方法循環依次讀取每個記錄中各字段(列)的內容。ExecuteScaler(),該方法用于執行SELECT查詢,得到的返回結果為一個值的情況,比如使用count函數求表中記錄個數或者使用sum函數求和等。
SqlConnection對象
ADO.NET使用SqlConnection對象與SQL Server進行連接。連接字符串的常用形式有兩種:
1.使用Windows集成安全身份認證,例如:
- string connectionString ="IntegratedSecurity=SSPI;
- Database=MyDatabase.mdf;Server=localhost;";
或:
- string connectionString = "Initial Catalog= MyDataBase;
- Data Source=localhost;Integrated Security=SSPI;"
2.在連接字符串中指定服務器名、用戶id、用戶口令、數據庫名等信息。例如:
- string connectionString = "server=localhost; uid=sa;
- pwd=123; database=MyDatabase.mdf";
然后通過連接字符串直接創建SqlConnection對象,如
- SqlConnection conn = new SqlConnection(connectionString);