關於C#與Access的一個例子[轉]

Asp.net夜話之七:ADO.NET介紹

http://blog.csdn.net/zhoufoxcn/archive/2008/10/13/3066799.aspx

 

 

 

http://www.albertsong.com/read-56.html

本文介紹C#訪問操作Access數據庫的基礎知識,並提供一個相關的例程。
1.通過ADO.NET的OleDb相關類來操作Access
主要知識點如下:
using System.Data.OleDb;
using System.Data;
連接字符串:String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=product.mdb";
建立連接:OleDbConnection connection = new OleDbConnection(connectionString);
使用OleDbCommand類來執行Sql語句:
OleDbCommand cmd = new OleDbCommand(sql, connection);
connection.Open();
cmd.ExecuteNonQuery();
2.取得Access自增標識字段在插入數據後的id值
cmd.CommandText = @"select @@identity";
int value = Int32.Parse(cmd.ExecuteScalar().ToString());
return value;
3.執行事務
需要用到OleDbTransaction,關鍵語句如下:
OleDbConnection connection = new OleDbConnection(connectionString);
OleDbCommand cmd = new OleDbCommand();
OleDbTransaction transaction = null;
cmd.Connection = connection;
connection.Open();
transaction = connection.BeginTransaction();
cmd.Transaction = transaction;
cmd.CommandText=sql1;
cmd.ExecuteNonQuery();
cmd.CommandText=sql2;
cmd.ExecuteNonQuery();
transaction.Commit();
4.執行查詢,返回DataSet
OleDbConnection connection = new OleDbConnection(connectionString);
DataSet ds = new DataSet();
connection.Open();
OleDbDataAdapter da = new OleDbDataAdapter(sql, connection);
da.Fill(ds,"ds");
5.分頁查詢
分頁查詢使用OleDbDataReader來讀取數據,並將結果寫到一個DataSet中返回。
以上內容封裝爲三個可重用的類:AccessDBUtil,AccessPageUtil,Page
代碼這裏下載AccessDBUtilDemo.rar (191.37 KB , 下載:3089次)
本例程是一個c#的winform程序,但是數據訪問類可以在Web環境下使用。
本例程演示了:
1.Access數據庫的插入,更新,修改,查詢;
2.帶參數的sql語句的使用,而不是拼SQL;
3.使用DataReader的分頁查詢,而不是用嵌套的SQL語句來分頁;
4.用事務同時執行多個SQL語句;
5.在插入數據的同時返回最新的ID值;
6.整型,實型,字符串,日期型,布爾型五種數據類型的操作;
7.使用正則表達式來驗證整數和實數;
8.listview用來顯示數據的一些基本用法。
本示例不包括:
1.高效的分頁查詢,僅僅是提供了一種分頁的方法,但我認爲DataReader應該比嵌套的SQL語句快(未測試)。
2.完善的分頁封裝,只提供了分頁的簡單包裝。
3.嵌套的事務處理,提供了同時執行多個sql語句的事務處理,但不支持嵌套事務。
4.listview的使用,只是利用winform控件來演示數據訪問,因此不能作爲winform編程的良好示例,例如添加數據時界面並沒有很好地更新。
運行截圖

後記:
Access的數據訪問操作暫時到此爲止,希望這個例子對初學C#和Access的有一點點幫助。
明天將這個例子改成訪問MySQL的例程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章