一、介紹
ado.net是.net framework的資料提供程序,它主要有SqlConnection、SqlCommand、SqlDataAdapter、SqlDataReader和DataSet五大物件構成,結構如下圖
1.SqlConnection類別表示一個sql server資料庫的一個連接
連接字串格式一般有以下兩種形式,具體參數可參考msdn
1)Persist Security Info=False;Integrated Security=true;Initial Catalog=Northwind;server=(local)
# . =sa;Password=123; 建立一個連線如下SqlConnection## conn = Connection SqlConnection## conn = Connection ##(connString);
2.SqlCommand類別表示資料庫執行指令物件 1)用來設定需要執行的sql腳本或預存程序、逾時時間、參數和交易等。
2)建立方式如下
SqlConnectionc(); //
## CreateCommand();
//方式二
SqlCommand cmd = new
SqlCommand();## cmd.CommandText = "select * from table" ;
cmd.Connection = conn; 3)幾個主要方法 ExecuteNonQuery:對連線執行sql語句並傳回受影響行數,主要執行增、刪和改運算
ExecuteReader:執行查詢返回SqlDataReader物件
ExecuteScalar:執行查詢結果集的第一行與第一列結果中的第一行與第一列表示Adapter類別用來填入DataSet與更新資料庫資料指令與資料庫連線
此類別有4種建構子如下
#public##
# #
#o##' #SqlDataAdapter();
1 SqlDataAdapter(#SqlCommand# selectCommand);selectCommand);selectCommand);selectCommand);selectCommand);selectCommand);
卷#public SqlDataAdapter(string #selectCommandText, SqlConnection# SqlConnection#selectConnection);
public SqlDataAdapter(
string selectCommandText,
string
selectConnectionString);
4.SqlDataReader
類別提供一個資料流只會讀取# ##類別提供一個資料流只進方式讀取
5.DataSet
類別表示資料在記憶體中的快取
二、ADO.NET簡單實作
下方實作一個增、刪除、變更、查的例子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
|
上面程式碼中使用using來確保資源釋放,所有實作IDisposable介面的類別都可以用using來釋放,即使在呼叫物件的方法上發生異常也會釋放。
上面程式碼只對sql server有效,如果要實作不同資料庫如oracle則又需要另外寫一套代碼,.Net提供了DbProviderFactory類別來建立不同資料庫實例。 同時上面5大物件也要換成DbConnection、DbCommand、DbDataReader、DbDataAdapter把特定sql server物件抽象化成更具體和資料庫類型無關物件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
|
以上是什麼是ado.net以及其簡單實作詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!