C#
C# OleDb Access to DataGridView Open. Table list ComboBox
hwanjung
2022. 4. 23. 12:14
// Access open to Table Read
OpenFileDialog _Ofd = new OpenFileDialog();
_Ofd.Filter = "Access File (*.accdb)|*.accdb";
if (_Ofd.ShowDialog() == DialogResult.OK)
{
string OpenFilePathName = _Ofd.FileName;
try
{
//"Provider=Microsoft.Jet.OLEDB.4.0;DataSource='d:\\Project\\database\\Program.mdb'";
string _StrConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + OpenFilePathName + ";";
using (OleDbConnection _OleConn = new OleDbConnection(_StrConn))
{
_OleConn.Open();
DataTable _DTable = _OleConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
new object[] { null, null, null, "TABLE" });
if (_DTable.Rows.Count == 0) MessageBox.Show("No Table");
else
{
string sTable = string.Empty;
for (int r = 0; r < _DTable.Rows.Count; r++)
{
comboBox1.Items.Add(_DTable.Rows[r]["TABLE_NAME"].ToString());
}
}
if (_OleConn.State == ConnectionState.Open)
{
_OleConn.Close(); // 연결 종료
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
// ComboBox Text Name (Table Name) Select DB Load
if (OpenFilePathName.Length > 0 && comboBox1.Text.Length > 0)
{
string _StrConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + OpenFilePathName + ";";
using (OleDbConnection _OleConn = new OleDbConnection(_StrConn))
{
_OleConn.Open();
OleDbDataAdapter _Adapter = new OleDbDataAdapter();
_Adapter.SelectCommand = new OleDbCommand("SELECT * FROM [" + comboBox1.Text + "]", _OleConn);
DataSet _DSet = new DataSet();
_Adapter.Fill(_DSet);
dataGridView1.DataSource = _DSet.Tables[0].DefaultView;
if (_OleConn.State == ConnectionState.Open)
{
_OleConn.Close();
}
}
}