연습: 간단한 데이터 응용 프로그램 만들기
업데이트: 2007년 11월
응용 프로그램 개발에서 가장 일반적인 시나리오는 Windows Form에 데이터베이스의 데이터를 표시하는 것입니다. 데이터 소스 창에서 폼으로 항목을 끌어 Windows 응용 프로그램의 폼에 데이터를 표시할 수 있습니다. 이 연습에서는 데이터베이스에 있는 관련된 두 테이블의 데이터를 표시하는 응용 프로그램을 만드는 방법을 보여 줍니다.
이 연습에서는 다음 작업을 수행합니다.
Windows 기반 응용 프로그램을 만듭니다.
데이터 소스 구성 마법사를 사용하여 Northwind 데이터베이스의 Customers 및 Orders 테이블을 기반으로 하는 데이터 집합을 만들고 구성합니다.
Customers 테이블의 데이터를 표시하기 위한 컨트롤을 추가합니다.
선택된 고객을 기준으로 주문을 표시하기 위한 컨트롤을 추가합니다.
응용 프로그램을 테스트합니다. 서로 다른 고객을 선택하고 선택한 고객에 대해 올바른 주문이 표시되는지 확인합니다.
데이터를 수정하고 데이터베이스에 저장합니다.
비디오 데모를 보려면 Video How to: Creating a Simple Data Application을 참조하십시오.
사전 요구 사항
이 연습을 완료하려면 다음 구성 요소가 필요합니다.
- Northwind 샘플 데이터베이스에 대한 액세스. 자세한 내용은 방법: 샘플 데이터베이스 설치를 참조하십시오.
프로젝트 만들기
첫 번째 단계는 Windows 기반 응용 프로그램을 만드는 것입니다.
참고: |
---|
시스템에서 일부 Visual Studio 사용자 인터페이스 요소에 대해 다음 지침에서 설명한 것과 다른 이름 또는 위치를 표시할 수 있습니다. 설치한 Visual Studio 버전과 사용하는 설정에 따라 이러한 요소가 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오. |
프로젝트를 만들려면
파일 메뉴에서 새 프로젝트를 만듭니다.
Windows 응용 프로그램을 선택하고 이름을 DataWalkthrough로 지정합니다. 자세한 내용은 Windows 기반 응용 프로그램 만들기를 참조하십시오.
확인을 클릭합니다.
DataWalkthrough 프로젝트가 만들어져 솔루션 탐색기에 추가됩니다.
데이터 소스 만들기
이 단계에서는 데이터 소스 구성 마법사를 사용하여 Northwind 샘플 데이터베이스의 Customers 및 Orders 테이블을 기반으로 하는 데이터 집합을 만듭니다.
데이터 소스를 만들려면
데이터 메뉴에서 데이터 소스 표시를 클릭합니다.
데이터 소스 창의 도구 모음에서 새 데이터 소스 추가 단추를 클릭하여 데이터 소스 구성 마법사를 시작합니다.
데이터 소스 형식을 선택하십시오. 페이지에서 데이터베이스를 선택하고 다음을 클릭합니다.
데이터 연결 선택 페이지에서 다음 중 한 가지를 수행합니다.
Northwind 샘플 데이터베이스에 대한 데이터 연결이 드롭다운 목록에 표시되면 해당 연결을 선택합니다.
- 또는 -
새 연결을 선택하여 연결 추가/수정 대화 상자를 시작합니다. 자세한 내용은 연결 추가/수정 대화 상자(일반)를 참조하십시오.
데이터베이스에 암호가 필요하면 중요한 데이터를 포함하는 옵션을 선택하고 다음을 클릭합니다.
응용 프로그램 구성 파일에 연결 문자열 저장 페이지에서 다음을 클릭합니다.
데이터베이스 개체 선택 페이지에서 테이블 노드를 확장합니다.
Customers 및 Orders 테이블을 선택한 다음 마침을 클릭합니다.
NorthwindDataSet이 프로젝트에 추가되고 Customers 및 Orders 테이블이 데이터 소스 창에 나타납니다.
Customers 테이블의 데이터를 표시하는 컨트롤 만들기
데이터 소스 창에서 Windows Form으로 항목을 끌어 와 데이터 바인딩된 컨트롤을 만듭니다.
고객 데이터(부모 레코드)를 표시하는 컨트롤을 만들려면
데이터 소스 창에서 Customers 테이블을 선택하고 드롭다운 화살표를 클릭합니다.
Customer 테이블의 컨트롤 목록에서 자세히를 선택합니다.
주 Customers 노드를 데이터 소스 창에서 Form1로 끌어 옵니다.
설명 레이블이 있는 데이터 바인딩된 컨트롤이 폼에 나타납니다. 구성 요소 트레이에 다음 구성 요소가 나타납니다.
NorthwindDataSet. Customers 및 Orders 테이블이 포함된 형식화된 데이터 집합입니다.
CustomersBindingSource. 폼의 컨트롤을 NorthwindDataSet의 Customers 데이터 테이블에 바인딩하는 BindingSource입니다.
CustomersBindingNavigator. Customers 테이블의 레코드를 이동하는 데 사용되는 BindingNavigator입니다.
CustomersTableAdapter. 데이터베이스와 NorthwindDataSet 사이에 통신하는 TableAdapter입니다. 자세한 내용은 TableAdapter 개요를 참조하십시오.
TableAdapterManager. 데이터 집합의 모든 TableAdapter 구성 요소에 대한 삽입, 업데이트 및 삭제의 순서를 제어하는 데 사용되는 TableAdapterManager 구성 요소입니다. 자세한 내용은 TableAdapterManager 개요를 참조하십시오.
Orders 테이블의 데이터를 표시하는 컨트롤 만들기
각 고객의 주문(자식 레코드)을 표시하는 컨트롤을 만들려면
데이터 소스 창에서 Customers 노드를 확장하고 Customers 테이블의 마지막 열로, Fax 열 아래에 있는 확장 가능한 Orders 노드를 선택한 후 Form1의 아래쪽으로 끌어 옵니다. Customers 테이블 계층 구조에서 이 노드는 Orders 테이블에 있는 모든 레코드는 나타내고 개별 고객의 주문은 나타내지 않는 주 Orders 노드와 달리 고객과 관련된 주문을 나타냅니다.
DataGridView가 폼에 추가되고 새 BindingSource 구성 요소(OrdersBindingSource) 및 TableAdapter(OrdersTableAdapter)가 구성 요소 트레이에 추가됩니다.
참고: 속성 창을 열고 OrdersBindingSource 구성 요소를 선택합니다. DataSource 및 DataMember 속성을 검사하여 관련 레코드를 표시하기 위해 데이터 바인딩이 어떻게 구성되었는지 확인합니다. DataSource는 Orders 테이블이 아닌 CustomersBindingSource(부모 테이블의 BindingSource)로 설정되어 있습니다. DataMember 속성은 테이블을 서로 연결하는 DataRelation 개체의 이름인 FK_Orders_Customers로 설정되어 있습니다.
응용 프로그램 테스트
응용 프로그램을 테스트하려면
F5 키를 누릅니다.
서로 다른 고객을 선택하여 폼의 모눈에 올바른 주문이 표시되는지 확인합니다.
하나 이상의 레코드를 수정합니다.
저장 단추(디스크 아이콘)를 클릭합니다.
변경 내용이 데이터베이스에 저장되었는지 확인합니다.
다음 단계
응용 프로그램 요구 사항에 따라 마스터-세부 폼을 만든 후 몇 단계를 더 수행해야 할 수도 있습니다. 이 연습에서 보완할 수 있는 사항은 다음과 같습니다.
TableAdapter 마법사를 사용하여 응용 프로그램에 데이터를 로드하는 쿼리를 편집합니다. 자세한 내용은 방법: TableAdapter 쿼리 편집 및 방법: TableAdapter 편집을 참조하십시오.
변경 내용을 데이터베이스에 보내기 전에 올바른 데이터가 입력되고 있는지 확인하는 유효성 검사를 추가합니다. 자세한 내용은 데이터 유효성 검사를 참조하십시오.