728x90
300x250
[C#.NET] OleDB를 이용한 우편번호 검색 구현하기
.NET Framework는 MS 제품에 효율성과 개발자들에게 생산성을 위하여 많은 기능을 제공하고 있습니다.
데이터베이스 프로그래밍 또한 몇 번 클릭을 통해 쉽게 구현할 수 있습니다.
기존에 우리가 많이 사용하는 엑셀을 쉽고 간편하게 제어할 수 있도록 .NET Framework 라이브러리에 이미 구성되어 있습니다.
이번 예제에서는 OLEDB를 이용한 우편번호 검색을 구현하는 방법을 소개하고자 합니다.
1. 작성 예제
큰 주제 : Excel과 Access를 활용한 데이터베이스 구현
이번에 만들 예제의 모습은 위의 그림과 같습니다.
1-1. 출력될 디렉토리에 반드시 존재해야할 파일
데이터베이스 파일이 필요합니다.
이번 예제에 사용된 자료를 첨부했으니 다운받아서 실습하시기 바랍니다.
address.xls
address.mdb
1-2. 폼 인터페이스 디자인
1-3. 소스 코드
엑셀을 이용한 자료 처리
using System.Data.OleDb;
namespace WindowsApplication
{
namespace WindowsApplication
{
public partial class Form1 : Form
{
{
pubilc Form1()
{
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
private void Form1_Load(object sender, EventArgs e)
{
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=|DataDirectory|\\address.xls;" +
"Extended Properties=Excel 8.0;";
"Extended Properties=Excel 8.0;";
string strQry;
OleDbConnection oleConn = new OleDbConnection(connectionString);
oleConn.Open();
strQry = "Select TOP 10 * FROM [Address$]";
OleDbDataAdapter oleData = new OleDbDataAdapter(strQry, oleConn);
DataTable excelData = new DataTable();
dataGridView1.DataSource = excelData;
oleData.Fill(excelData);
oleConn.Close();
// 자동 크기 조절을 하고자 할 때 옵션
for (int i = 0; i < dataGridView1.ColumnCount; i++)
dataGridView1.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
OleDbConnection oleConn = new OleDbConnection(connectionString);
oleConn.Open();
strQry = "Select TOP 10 * FROM [Address$]";
OleDbDataAdapter oleData = new OleDbDataAdapter(strQry, oleConn);
DataTable excelData = new DataTable();
dataGridView1.DataSource = excelData;
oleData.Fill(excelData);
oleConn.Close();
// 자동 크기 조절을 하고자 할 때 옵션
for (int i = 0; i < dataGridView1.ColumnCount; i++)
dataGridView1.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
}
}
Access DB를 이용한 자료 처리
using System.Data.OleDb;
namespace WindowsApplication
{
namespace WindowsApplication
{
public partial class Form1 : Form
{
{
pubilc Form1()
{
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
private void Form1_Load(object sender, EventArgs e)
{
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=|DataDirectory|\\zipcode.mdb;";
string strQry;
OleDbConnection oleConn = new OleDbConnection(connectionString);
oleConn.Open();
strQry = "Select TOP 10 * FROM zipcode";
OleDbDataAdapter oleData = new OleDbDataAdapter(strQry, oleConn);
DataTable AccessData = new DataTable();
dataGridView1.DataSource = AccessData;
oleData.Fill(AccessData);
oleConn.Close();
// 자동 크기 조절을 하고자 할 때 옵션
for (int i = 0; i < dataGridView1.ColumnCount; i++)
dataGridView1.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
OleDbConnection oleConn = new OleDbConnection(connectionString);
oleConn.Open();
strQry = "Select TOP 10 * FROM zipcode";
OleDbDataAdapter oleData = new OleDbDataAdapter(strQry, oleConn);
DataTable AccessData = new DataTable();
dataGridView1.DataSource = AccessData;
oleData.Fill(AccessData);
oleConn.Close();
// 자동 크기 조절을 하고자 할 때 옵션
for (int i = 0; i < dataGridView1.ColumnCount; i++)
dataGridView1.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
}
}
}
2. 결론
Access는 중간 DBMS이라면, Excel은 작은 DBMS입니다.
3. 소스 코드
101223_OLEDB_C#_Lecture_Example.zip
반응형
'소프트웨어(SW) > MS - Visual C#.NET' 카테고리의 다른 글
[C#.NET] 소스 코드 요약하기 - #region (7) | 2011.02.10 |
---|---|
[C#.NET + ADO.NET] Crystal Report 13 데이터 집합과 동적 제어 (7) | 2010.12.30 |
[C#.NET] Delegate를 이용한 폼 처리 (8) | 2010.12.23 |
[C#.NET] openFileDialog를 이용한 파일 첨부 기반 예제 (8) | 2010.12.23 |
[C#.NET] Base64 (8) | 2010.12.22 |