1.首先需要添加引用“%Visual Studio安装目录%/Common7/IDE/Microsoft.Data.ConnectionUI.Dialog.dll”
2.using Microsoft.Data.ConnectionUI;
using System.Data;
3.实例代码
DataConnectionDialog dialog = new DataConnectionDialog();
dialog.DataSources.Clear();
#region//mdb
dialog.DataSources.Add(DataSource.AccessDataSource);
dialog.SelectedDataProvider = DataProvider.OleDBDataProvider;
dialog.SelectedDataSource = DataSource.AccessDataSource;
#endregion
#region //Sql Server
dialog.DataSources.Add(DataSource.SqlDataSource);//Sql Server
dialog.SelectedDataSource = DataSource.SqlDataSource;
dialog.SelectedDataProvider = DataProvider.SqlDataProvider;
#endregion
#region//Oracle
dialog.DataSources.Add(DataSource.OdbcDataSource);
dialog.SelectedDataSource = DataSource.OracleDataSource;
dialog.SetSelectedDataProvider = DataProvider.OracleDataProvider;
#endregion
if (DataConnectionDialog.Show(dialog) == DialogResult.OK)
{
try
{
string strCom = " SELECT * FROM JQ_Info";
创建一个 DataSet对象
DataSet ds = new DataSet();
#region//(1)连接mdb
OleDbConnection dbConn = new OleDbConnection(dialog.ConnectionString);
dbConn.Open();
OleDbDataAdapter dbAdapter = new OleDbDataAdapter(strCom, dbConn);
dbAdapter.Fill(ds);
dbConn.Close();
#endregion
#region//(2)连接Sql Server
SqlConnection sqlConn = new SqlConnection(dialog.ConnectionString);
sqlConn.Open();
SqlDataAdapter sqlAdapter = new SqlDataAdapter(strCom,sqlConn);
sqlAdapter.Fill(ds);
sqlConn.Close();
#endregion
}
catch (System.Exception ex)
{
MessageBox.Show("连接本地MDB数据库发生错误:" + ex.ToString(), "错误!");
}
finally
{
}
}
///
//执行sql查询,返回表
private OleDbConnection dbConn = null;
private OleDbDataAdapter dbAdapter = null;
private OleDbCommand dbCommand = null;
dbConn = new OleDbConnection(dialog.ConnectionString);
dbCommand = new OleDbCommand();
dbCommand.Connection = dbConn;
dbCommand.CommandType = CommandType.Text;
dbAdapter = new OleDbDataAdapter();
dbAdapter.SelectCommand = dbCommand;
private DataTable ExcuteDatatable( string sSql)
{
DataTable dtTmp = null;
try
{
dtTmp = new DataTable();
if (dbConn.State != ConnectionState.Open)
dbConn.Open();
dbCommand.CommandText = sSql;
dbAdapter.Fill(dtTmp);
dbAdapter.Update(dtTmp);
dbConn.Close();
return dtTmp;
}
catch (System.Exception ex)
{
}
return dtTmp;
}