연습: 데이터베이스에 데이터 저장(단일 테이블)
가장 일반적인 응용 프로그램 개발 시나리오 중 하나는 Windows 응용 프로그램의 폼에 데이터를 표시하고 데이터를 편집한 다음 업데이트된 데이터를 다시 데이터베이스에 보내는 것입니다.이 연습에서는 단일 테이블의 데이터를 개별 컨트롤에 표시하는 간단한 폼을 만듭니다.컨트롤의 데이터를 편집하고 변경 내용을 다시 데이터베이스에 저장할 수 있습니다.이 예제에서는 Northwind 샘플 데이터베이스의 Customers 테이블을 사용합니다.
TableAdapter의 Update 메서드를 호출하여 응용 프로그램의 데이터를 다시 데이터베이스에 저장할 수 있습니다.데이터 소스 창에서 항목을 끌어 오면 데이터 저장 코드는 폼으로 끌어 온 첫 번째 테이블에 자동으로 추가됩니다.폼에 추가된 테이블을 사용하려면 데이터를 저장하는 데 필요한 코드를 수동으로 추가해야 합니다.둘 이상의 테이블에서 데이터를 저장하는 데 대한 자세한 내용은 연습: 데이터베이스에 데이터 저장(여러 테이블)을 참조하십시오.
이 연습에서 수행할 작업은 다음과 같습니다.
새 Windows 응용 프로그램 프로젝트 만들기
데이터 소스 구성 마법사를 사용하여 응용 프로그램에서 데이터 소스를 만들고 구성합니다.
데이터 소스 창에서 항목의 컨트롤을 설정합니다.자세한 내용은 방법: 데이터 소스 창에서 끌어 올 때 만들 컨트롤 설정을 참조하십시오.
데이터 소스 창에서 폼으로 항목을 끌어 와 데이터 바인딩된 컨트롤을 만듭니다.
데이터 집합에서 몇 가지 레코드를 수정합니다.
데이터 집합에서 업데이트된 데이터를 다시 데이터베이스에 보내는 코드를 추가합니다.
[!참고]
표시되는 대화 상자와 메뉴 명령은 활성 설정이나 버전에 따라 도움말에서 설명하는 것과 다를 수 있습니다.설정을 변경하려면 도구 메뉴에서 설정 가져오기 및 내보내기를 선택합니다.자세한 내용은 Visual Studio 설정을 참조하십시오.
사전 요구 사항
이 연습을 완료하려면 다음과 같은 요건이 필요합니다.
- Northwind 샘플 데이터베이스에 액세스할 수 있어야 합니다.자세한 내용은 방법: 샘플 데이터베이스 설치를 참조하십시오.
Windows 응용 프로그램 만들기
첫 단계에서는 Windows 응용 프로그램을 만듭니다.이 단계에서 프로젝트에 이름을 지정하는 것은 선택 사항이지만 나중에 프로젝트를 저장할 예정이므로 이름을 지정합니다.
새 Windows 응용 프로그램 프로젝트를 만들려면
파일 메뉴에서 새 프로젝트를 만듭니다.
프로젝트 이름을 UpdateSingleTableWalkthrough로 지정합니다.
Windows 응용 프로그램을 선택하고 확인을 클릭합니다.자세한 내용은 클라이언트 응용 프로그램 개발를 참조하십시오.
UpdateSingleTableWalkthrough 프로젝트가 만들어져 솔루션 탐색기에 추가됩니다.
데이터 소스 만들기
이 단계에서는 데이터 소스 구성 마법사를 사용하여 Northwind 데이터베이스에서 데이터 소스를 만듭니다.마법사를 완료하려면 Northwind 샘플 데이터베이스에 액세스할 수 있는 권한이 있어야 합니다.Northwind 샘플 데이터베이스 설치에 대한 자세한 내용은 방법: 샘플 데이터베이스 설치를 참조하십시오.
데이터 소스를 만들려면
데이터 메뉴에서 데이터 소스 표시를 클릭합니다.
데이터 소스 창에서 새 데이터 소스 추가를 클릭하여 데이터 소스 구성 마법사를 시작합니다.
데이터 소스 형식 선택 페이지에서 데이터베이스를 선택하고 다음을 클릭합니다.
데이터 연결 선택 페이지에서 다음 중 하나를 수행합니다.
Northwind 샘플 데이터베이스에 대한 데이터 연결이 드롭다운 목록에 표시되면 해당 연결을 선택합니다.
또는
새 연결을 선택하여 연결 추가/수정 대화 상자를 엽니다.자세한 내용은 연결 추가/수정 대화 상자(일반)을 참조하십시오.
데이터베이스에 암호가 필요하면 중요한 데이터를 포함하는 옵션을 선택하고 다음을 클릭합니다.
응용 프로그램 구성 파일에 연결 문자열 저장 페이지에서 다음을 클릭합니다.
데이터베이스 개체 선택 페이지에서 테이블 노드를 확장합니다.
Customers 테이블을 선택한 다음 마침을 클릭합니다.
NorthwindDataSet이 프로젝트에 추가되고 Customers 테이블이 데이터 소스 창에 나타납니다.
만들 컨트롤 설정
이 연습에서는 기본 DataGridView 레이아웃 대신 개별 컨트롤에 데이터가 표시되는 자세히 레이아웃에 데이터가 있습니다.
데이터 소스 창에서 항목에 대한 컨트롤을 설정하려면
데이터 소스 창에서 Customers 노드를 확장합니다.
Customers 노드의 드롭다운 목록에서 자세히를 선택하여 Customers 테이블에 대한 컨트롤을 개별 컨트롤로 변경합니다.자세한 내용은 방법: 데이터 소스 창에서 끌어 올 때 만들 컨트롤 설정을 참조하십시오.
데이터 바인딩된 폼 만들기
데이터 소스 창에서 폼으로 항목을 끌어 와 데이터 바인딩된 컨트롤을 만들 수 있습니다.
폼에 데이터 바인딩된 컨트롤을 만들려면
주 Customers 노드를 데이터 소스 창에서 Form1으로 끌어서 놓습니다.
레코드 탐색에 사용되는 도구 스트립(BindingNavigator)과 설명 레이블이 있는 데이터 바인딩된 컨트롤이 폼에 나타납니다.NorthwindDataSet, CustomersTableAdapter, BindingSource 및 BindingNavigator가 구성 요소 트레이에 나타납니다.
데이터베이스를 업데이트하도록 코드 수정
CustomersTableAdapter의 Update 메서드를 호출하여 데이터베이스를 업데이트할 수 있습니다.기본적으로 BindingNavigator의 저장 단추에 대한 이벤트 처리기가 데이터베이스에 업데이트를 보내는 폼의 코드에 추가됩니다.이 과정에서는 try-catch 블록에 업데이트 호출을 래핑하여 오류 처리를 포함하도록 코드를 수정합니다.응용 프로그램의 요구 사항을 충족하도록 코드를 수정할 수 있습니다.
응용 프로그램에 업데이트 논리를 추가하려면
BindingNavigator에서 저장 단추를 두 번 클릭하여 bindingNavigatorSaveItem_Click 이벤트 처리기에 대한 코드 편집기를 엽니다.
이벤트 처리기에서 코드를 바꿔 몇 가지 오류 처리를 추가합니다.코드는 다음과 같습니다.
Try Me.Validate() Me.CustomersBindingSource.EndEdit() Me.CustomersTableAdapter.Update(Me.NorthwindDataSet.Customers) MsgBox("Update successful") Catch ex As Exception MsgBox("Update failed") End Try
try { this.Validate(); this.customersBindingSource.EndEdit(); this.customersTableAdapter.Update(this.northwindDataSet.Customers); MessageBox.Show("Update successful"); } catch (System.Exception ex) { MessageBox.Show("Update failed"); }
응용 프로그램 테스트
응용 프로그램을 테스트하려면
F5 키를 누릅니다.
하나 이상의 레코드에 대해 데이터를 변경합니다.
저장 단추를 누릅니다.
데이터베이스에서 값을 확인하여 변경 내용이 저장되었는지 확인합니다.
다음 단계
응용 프로그램 요구 사항에 따라 Windows 응용 프로그램의 데이터 바인딩된 폼을 만든 후 몇 단계를 더 수행해야 할 수도 있습니다.이 연습에서 보완할 수 있는 사항은 다음과 같습니다.
폼에 검색 기능을 추가합니다.자세한 내용은 방법: Windows Forms 응용 프로그램에 매개 변수가 있는 Query 추가를 참조하십시오.
관련 데이터를 표시하는 컨트롤을 추가합니다.자세한 내용은 방법: Windows Forms 응용 프로그램에서 관련 데이터 표시를 참조하십시오.
데이터 소스를 편집하여 데이터베이스 개체를 추가하거나 제거합니다.자세한 내용은 방법: 데이터 집합 편집을 참조하십시오.
참고 항목
개념
Visual Studio 2012 데이터 응용 프로그램 개발의 새로운 기능
Visual Studio에서 데이터에 Windows Forms 컨트롤 바인딩