1. 程式人生 > >ado.net複習知識總結

ado.net複習知識總結

1.SqlCommand的ExecuteScalar方法用於執行查詢,並返回查詢所返回的結果集的第一行的第一列,因為不能確定返回值的型別,所以返回值是object型別。
2.得到自動增長欄位大的主鍵值,在values關鍵詞前加上output inserted.id(其中id為主鍵欄位名)。
3.執行有多行結果集的用ExecteReader
4.HasRow屬性返回是否有行。
5.為什麼使用using?close:關閉以後還能開啟。dispose:直接銷燬,不能再次使用。
6.當使用DataReader的時候必須保證Connection為Open狀態。
7.如果返回多個結果集則用NextResult()方法。通過do-while迴圈測試。
8.ado.net連線池使用總結:
(8.1)第一次開啟連線會建立一個連線物件。
(8.2)當這個連線池關閉時,(呼叫close()方法時)會將當前那個連線物件放入池中。
(8.3)下一個連線物件,如果連線字串與池中連線字串完全一致,則會使用池中的現有連線,而不會重新建立一個。
9.Connection物件用於連線資料庫,它的常用的屬性如下:
--ConnectionString屬性:該屬性用來獲取或設定用於開啟SQL Sever資料庫的連線字串。
--ConnectionTimeout屬性:該屬性用來獲取在嘗試建立連線時所等待的最長時間。
10.在ConnectionString連線字串裡,一般需要指定:
-將要連線資料來源的種類(Provider引數)

-資料庫伺服器的名稱(Server引數或Data Source)
-資料庫名(DataBase引數或Initial Catalog)

-登入使用者名稱(Uid引數或User ID)
-密碼(Pwd引數或Password)
-等待連線時間(Connect Timeout引數)

-安全驗證設定(Integrated Security引數)等引數

--這些引數之間用分號隔開。
11.Integrated Security=SSPI表示連線時使用的驗證模式是Windows身份驗證模式。
12.使用Connection物件的CreateCommand()方法建立Command物件,無引數。
13.Command物件的常用方法
--ExecuteNonQuery方法:執行不返回結果的sql語句(如update、delete、insert)可以寫回資料來源,並返回受影響的行數。
--ExectuReader方法:執行返回一個結果集的查詢語句,該方法能夠返回DataReader物件,可以通過此物件檢查查詢結果。
--ExecuteScalar方法:執行查詢,查詢出結果集中的第一行的第一列。
14.ExecuteReader方法  舉例:

例:獲取多個查詢結果集

string str =   "select * from seller;select * from product;";
conn.Open();

SqlCommand command = new SqlCommand(str, conn);

SqlDataReader dr = command.ExecuteReader();
 
 do { while (dr.Read())

           {Response.Write(dr[0]+"\t"+dr[1]+"<br>"); }
  
      }
   while (dr.NextResult()) ;
 
conn.Close();


15.執行引數化命令:
----為命令建立引數的幾種方法:
-使用引數類的建構函式Parameter()
--使用命令的CreateParameter()方法。
---使用命令的引數集合的Add方法。