C#操作Access之按列讀取mdb淺析
C#操作Access之按列讀取mdb是如何實(shí)現(xiàn)的呢?首先我們來看看基本的知識(shí):本文C#操作Access數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí),并提供一個(gè)相關(guān)的實(shí)例。C#的ADO.NET還不能通過編程方式創(chuàng)建全新的ACCESS(MDB)數(shù)據(jù)庫(kù),所以還只能使用ADOX這個(gè)來自COM的鏈接庫(kù)來操作。
C#操作Access主要知識(shí)點(diǎn)如下:
- using System.Data.OleDb;
- using System.Data;
C#操作Access連接字符串:
- String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;
- Data Source=product.mdb";
C#操作Access建立連接:
- OleDbConnection connection = new OleDbConnection(connectionString);
C#操作Access使用OleDbCommand類來執(zhí)行Sql語(yǔ)句:
- OleDbCommand cmd = new OleDbCommand(sql, connection);
- connection.Open();
- cmd.ExecuteNonQuery();
C#操作Access之按列讀取mdb內(nèi)容實(shí)例如下:
columns數(shù)組存儲(chǔ)的是你要查詢的列名稱(必須確保mdb表中存在你要的列)
- // 讀取mdb數(shù)據(jù)
- public static DataTable ReadDataByColumns(string mdbPaht,
- string tableName, string[] columns, ref bool success)
- {
- DataTable dt = new DataTable();
- try
- {
- DataRow dr;
- //1、建立連接 C#操作Access之按列讀取mdb
- string strConn = @"Provider=Microsoft.
- Jet.OLEDB.4.0;Data Source="
- + mdbPath + ";Jet OLEDB:Database Password=haoren";
- OleDbConnection odcConnection =
- new OleDbConnection(strConn);
- //2、打開連接 C#操作Access之按列讀取mdb
- odcConnection.Open();
- //建立SQL查詢
- OleDbCommand odCommand = odcConnection.CreateCommand();
- //3、輸入查詢語(yǔ)句
- string strColumn = "";
- for (int i = 0; i < columns.Length; i++)
- {
- strColumn += columns[i].ToString() + ",";
- }
- strColumn = strColumn.TrimEnd(',');
- odCommand.CommandText = "select "+strColumn+
- " from " + tableName;
- //建立讀取 C#操作Access之按列讀取mdb
- OleDbDataReader odrReader =
- odCommand.ExecuteReader();
- //查詢并顯示數(shù)據(jù) C#操作Access之按列讀取mdb
- int size = odrReader.FieldCount;
- for (int i = 0; i < size; i++)
- {
- DataColumn dc;
- dc = new DataColumn(odrReader.GetName(i));
- dt.Columns.Add(dc);
- }
- while (odrReader.Read())
- {
- dr = dt.NewRow();
- for (int i = 0; i < size; i++)
- {
- dr[odrReader.GetName(i)] = odrReader[
- odrReader.GetName(i)].ToString();
- }
- dt.Rows.Add(dr);
- }
- //關(guān)閉連接 C#操作Access之按列讀取mdb
- odrReader.Close();
- odcConnection.Close();
- success = true;
- return dt;
- }
- catch
- {
- success = false;
- return dt;
- }
- }
C#操作Access之按列讀取mdb的基本內(nèi)容就向你介紹到這里,希望對(duì)你了解和學(xué)習(xí)C#操作Access之按列讀取mdb有所幫助。
【編輯推薦】