C#讀取mdb文件


OdbcConnection、OleDbConnection均可讀取mdb文件

OleDbConnection

private static void UseOleDbConnection(string filePath,string sql)
{
	var myConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" +
				   $"Data Source={filePath};" +
				   "Persist Security Info=True;" +
				   "Jet OLEDB:Database Password=myPassword;";
	using (OleDbConnection myConnection = new OleDbConnection())
	{
		// 打開OleDb連接
		myConnection.ConnectionString = myConnectionString;
		myConnection.Open();

		// 執行查詢
		OleDbCommand cmd = myConnection.CreateCommand();
		cmd.CommandText = sql;
		OleDbDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection); // 完成查詢操作后關閉連接

		// 加載數據到DataTable
		DataTable myDataTable = new DataTable();
		myDataTable.Load(reader);
	}
}

OdbcConnection

private static void UseOdbcConnection(string filePath, string sql)
{
	var myConnectionString = @"Driver={Microsoft Access Driver (*.mdb)};" + $"Dbq={filePath};Uid=Admin;Pwd=;";
	using (OdbcConnection myConnection = new OdbcConnection())
	{
		// 打開OleDb連接
		myConnection.ConnectionString = myConnectionString;
		myConnection.Open();

		// 執行查詢
		OdbcDataAdapter pAdapter = new OdbcDataAdapter(sql, myConnection);
		DataTable dataTable = new DataTable();
		pAdapter.Fill(dataTable);
	}
}

ODBC & Ole Db

OleDbConnection類的對象連接支持OLE DB的數據庫,如Access;而OdbcConnection類的對象連接任何支持ODBC的數據庫
二者的區別和聯系:ODBC、OLEDB和ADO之間的關系 ,以及性能比較

示例代碼

ReadMdbFileDemo

參考資料

How to connect to a MS Access file (mdb) using C#?
各版本Access連接字符串寫法
OleDbConnection 類
OdbcConnection 類


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM