[VS.NET] Oracle Developer Tools For Visual Studio .NET을 이용한 .NET 애플리케이션의 개발
목적
이 모듈은 Oracle Developer Tools for Visual Studio .NET을 이용하여 .NET 애플리케이션을 개발하는 방법을 설명하고 있습니다.
소요시간
30분
주제
이 모듈에서 다루어지는 주제가 다음과 같습니다:
개요 | ||
사전 요구사항 | ||
오라클 연결의 생성 | ||
테이블의 생성 | ||
테이블의 데이터 조회 | ||
코드의 자동 생성 | ||
저장 프로시저의 활용 | ||
요약 |
스크린샷 보기
마우스를 이 아이콘 위에 가져가면 튜토리얼의 전체 스크린샷을 로드할 수 있습니다.
(주의: 모든 스크린샷이 동시에 로드되므로, 인터넷 연결에 따라 응답시간이 느려질 수 있습니다.)
참고: 아래 단계별 아이콘 위에 커서를 가져가면, 각 단계에 해당되는 스크린샷을 선택적으로 로드할 수 있습니다.
개요
Oracle Developer Tools for Visual Studio .NET은 Visual Studio .NET과 긴밀하게 통합된 “Add-in” 모듈로, .NET 개발자들이 오라클 데이터베이스 환경에서 개발 작업을 수행할 수 있게 합니다. Oracle Developer Tools for Visual Studio .NET은 데이터베이스 개발자에게 직관적인 개발 환경을 제공함으로써 개발자 생산성을 향상시킵니다. 또 오라클 환경을 처음 접하는 개발자를 위한 학습 용도로 활용되기도 합니다.
개발자는 Oracle Developer Tools for Visual Studio .NET이 제공하는 Oracle Explorer를 이용하여 오라클 스키마를 조회하고, 강력한 Designer/Wizard 툴을 이용해 스키마 오브젝트를 생성/변경하고, 스키마 오브젝트에 대한 드래그-앤-드롭 작업을 통해 코드를 자동으로 생성할 수 있습니다.
또 PL/SQL Editor, Ad-hoc SQL Query Window, (Oracle SQL 및 PL/SQL 사용자 가이드를 포함하는) 통합 온라인 도움말 등이 제공됩니다. Oracle Explorer를 이용하면, Visual Studio 환경에서 벗어나지 않고도 오라클 데이터의 입력/수정, 저장 프로시저의 테스트와 같은 작업을 수행할 수 있습니다!
그 밖에도 다양한 기능을 활용하여 개발자 생산성을 향상시키고, Windows 기반 오라클 환경에서의 개발 방법을 쉽고 빠르게 배워 나갈 수 있습니다.
사전 요구사항
다음과 같은 순서로 준비 작업을 수행합니다:
1. |
데이터베이스(8.1.7.4.1 또는 이후 버전)에 연결이 가능한지 확인합니다. | |
2. |
Oracle Database 10g Oracle Home에 Oracle Developer Tools ( http://otn.oracle.com/dotnet )를 설치합니다. Oracle8 또는 Oracle9의 Oracle Home에 설치해서는 안됩니다. 설치 과정에서 디폴트로 새로운 Oracle Home이 생성됩니다. 이전에 Oracle8 또는 Oracle9의 Oracle Home을 사용해온 경우, (Oracle_home/network/admin 디렉토리에 위치한) tnsnames.ora 파일을 새로 생성된 Oracle Home에 복사해야, 기존의 connection alias를 그대로 사용할 수 있습니다. 다운로드 : http://www.oracle.com/technology/software/tech/dotnet/odt_index.html |
오라클 연결의 생성
애플리케이션을 생성하기 전에, 먼저 Visual Studio를 실행하고 인터페이스를 점검해 보기로 합니다. 아래와 같이 작업을 수행합니다:
1. |
Start > Programs > Microsoft Visual Studio .NET > Microsoft Visual Studio .NET을 선택합니다. | |
2. |
View > Oracle Explorer를 선택합니다.
| |
3. |
연결을 추가하기 위해 + 아이콘을 클릭합니다.
| |
4. |
Data source name을 입력합니다 User name과 Password에 “hr”을 입력하고, Save password를 클릭한 뒤 Test Connection을 클릭합니다.
| |
5. |
연결 테스트가 성공적임을 확인하고 OK를 클릭합니다.
| |
6. |
OK를 클릭합니다.
| |
7. |
새로운 연결이 생성되었습니다. hr.<database>를 확장합니다. 다음 단계에서는 새로운 테이블을 생성합니다.
|
테이블의 생성
EMPLOYEES테이블을 참조하는 외래 키(foreign key)를 갖는 DEPENDENTS 테이블을 생성합니다.
컬럼의 생성 | ||
인덱스의 생성 | ||
외래 키의 생성 |
컬럼의 생성
아래와 같이 작업하여 테이블의 컬럼을 생성합니다:
1. |
Tables를 마우스 오른쪽 버튼으로 클릭한 후 New Relational Table...을 선택합니다.
| |
2. |
Table Name으로 DEPENDENTS를 입력하고 Columns 탭에서 Add를 클릭합니다.
| |
3. |
Name에 FIRSTNAME을 입력하고 데이터타입으로 VARCHAR2를, Size에 30을 입력한 다음, Add를 클릭합니다.
| |
4. |
Name에 LASTNAME을 입력하고 데이터타입으로 VARCHAR2를, Size에 30을 입력한 다음, Add를 클릭합니다.
| |
5. |
Name에 BIRTHDATE을 입력하고 데이터타입으로 DATE를 선택한 다음, Add를 클릭합니다.
| |
6. |
Name에 RELATIONSHIP을 입력하고 데이터타입으로 VARCHAR2를, Size에 20을 입력한 다음, Add를 클릭합니다.
| |
7. |
Name에 EMPLOYEEID를 입력하고 데이터타입으로 NUMBER를, Size에 6을, Precision에 0을 입력한 다음, Add를 클릭합니다.
| |
8. |
Name에 DEPENDENTID를 입력하고 데이터타입으로 NUMBER를, Size에 4를, Precision에 0을 입력한 다음, Save를 클릭합니다 이제 인덱스를 생성할 준비가 완료되었습니다.
|
인덱스의 생성
테이블의 인덱스를 생성하기 위해 아래와 같은 순서로 작업합니다:
1. |
Indexes 탭을 클릭합니다.
| |
2. |
Add를 클릭합니다.
| |
3. |
Name으로 DEPENDENTS_INDX를 입력하고 Index Keys 영역에서 Add를 클릭합니다.
| |
4. |
Key로 DEPENDENTID를 선택하고 Save를 클릭합니다. 이제 인덱스가 생성되었습니다.
|
외래 키(Foreign Key)의 생성
테이블에 외래 키를 생성하기 위해, 아래와 같은 순서로 작업합니다:
1. |
Constraints 탭을 클릭합니다.
| |
2. |
Add를 클릭합니다.
| |
3. |
Name에 EMPLOYEES_FK를 입력하고, Type에서 Foreign Key를, Table에서 EMPLOYEES를, Constraint에서 EMP_EMP_ID_PK를 선택합니다. Referenced Column에서 EMPLOYEE_ID를, Local Column에서 EMPLOYEEID를 선택한 후 Save를 클릭합니다.
| |
4. |
Oracle Explorer 뷰를 통해 생성된 테이블, 인덱스 및 제약조건을 확인할 수 있습니다.
|
테이블의 데이터에 접근하기 위해 아래와 같은 순서로 작업합니다.
1. |
DEPENDENTS 테이블을 마우스 오른쪽 버튼으로 클릭한 후 Retrieve Data...를 선택합니다.
| |
2. |
최소 4개의 데이터를 입력합니다 (이때 유효한 Employee ID가 입력되어야 함에 주의합니다). Save를 클릭합니다.
|
프로젝트를 생성하고, DEPENDENTS 테이블의 데이터를 출력하는 코드를 생성해 보기로 합니다. 아래와 같은 순서로 작업합니다:
1. |
Start 탭에서, New Project...를 선택합니다.
| |
2. |
Project Type으로 Visual C# Projects를, Template으로 Windows Application을 선택하고 Name(obe1)과 Location을 입력한 후 OK를 클릭합니다.
| |
3. |
Oracle Explorer 윈도우에서 DEPENDENTS 테이블을 선택하고 오른쪽 창의 Form1에 마우스로 끌어다 놓습니다.
| |
4. |
Yes를 클릭하여 생성되는 코드 내에 연결 패스워드를 저장하도록 합니다.
| |
5. |
Form 아래에 나타난 아이콘은 자동으로 생성된 코드를 의미합니다. 이 경우, Oracle Data Provider for .NET에 포함된 OracleDataAdapter가 생성되었음을 확인할 수 있습니다. dependentsOracleDataAdapter1을 더블클릭하여 코드를 확인합니다.
| |
6. |
생성된 코드를 포함하는 Form이 표시됩니다. Windows Form Designer generated code를 확장합니다.
| |
7. |
OracleDataAdapter는 ADO DataAdapter를 기반으로 하고 있습니다. ADO DataAdapter는 데이터베이스와 폼 위짓(widget)이 최소한의 코드만으로도 데이터를 주고받을 수 있도록 설계되어 있습니다. OracleDataAdapter 클래스는 Oracle Data Provider for .NET을 통해 제공됩니다. Oracle Data Provider for .NET는 Oracle Developer Tools 설치 과정에서 함께 설치됩니다. Form1.cs (Design) 탭을 클릭합니다.
| |
8. |
Dependents 테이블의 데이터를 애플리케이션에 디스플레이하기 위해, 폼에 Toolbox의 DataGrid를 추가합니다. View->Toolbox 메뉴를 선택합니다.
| |
9. |
Windows Forms 목록에서 DataGrid 를 선택하고, Form1 위에 마우스로 끌어다 놓습니다.
| |
10. |
DataGrid를 더블클릭하여 폼 안에 생성된 코드를 확인합니다.
| |
11. |
Select DataGrid1 from the list of Members.
| |
12. |
Members 목록에서 DataGrid1을 선택합니다. DataSet ds= new DataSet(); dependentsOracleDataAdapter1.Fill(ds); dataGrid1.DataSource = ds.Tables[0]; 참고: Visual Basic Project를 생성하는 경우 InitializeComponent() 뒷부분에 삽입되는 Public Sub New() 메소드를 위한 코드가 다음과 같습니다: Dim ds As DataSet = New DataSet dependentsOracleDataAdapter1.Fill(ds) DataGrid1.DataSource = ds.Tables(0)
| |
13. |
Output 영역에 에러 메시지가 나타나지 않았는지 확인한 다음 Debug > Start를 선택합니다.
| |
14. |
애플리케이션이 실행되면서 데이터와 함께 폼이 디스플레이됩니다.
|
저장 프로시저를 생성하고 실행해 봅니다.
저장 프로시저의 생성 | ||
Package Body의 편집 | ||
저장 프로시저의 실행 |
저장 프로시저의 생성
1. |
Oracle Explorer 윈도우에서, Packages를 마우스 오른쪽 버튼으로 클릭한 후 New Package를 클릭합니다.
| |
2. |
Package name으로 MYPACK을 입력하고 Methods 아래의 Add 버튼을 클릭합니다.
| |
3. |
Method name 필드에 GETCURSORS를 입력하고, Methods type 필드에서 Procedure를 선택한 후, Parameters 아래의 Add 버튼을 클릭합니다.
| |
4. |
Name 필드에 MAXROWS를 입력하고 Add를 클릭합니다.
| |
5. |
Name에 EMPLOYEESCUR를 입력하고, Direction으로 OUT을, Data type으로 SYS_REFCURSOR를 선택한 다음 Add를 클릭합니다.
| |
6. |
Name에 DEPENDENTSCUR를 입력하고, Direction에서 OUT을, Data type에서 SYS_REFCURSOR를 선택한 다음 OK를 클릭합니다.
| |
7. |
Preview SQL >>을 클릭하여 실행될 SQL 구문을 확인합니다.
| |
8. |
SQL 코드를 확인한 뒤 OK를 클릭합니다.
| |
9. |
OK를 클릭하여 Package를 생성합니다.
|
Package Body의 편집
1. |
Oracle Explorer 윈도우에서, 방금 생성한 MYPACK Package를 마우스 오른쪽 버튼으로 클릭하고 Edit Package Body를 선택합니다.
| |
2. |
NULL 라인을 아래 코드로 대체한 다음, 윈도우 탭을 마우스 오른쪽 버튼으로 클릭하고 Save를 선택합니다. OPEN EMPLOYEESCUR FOR SELECT * FROM EMPLOYEES; OPEN DEPENDENTSCUR FOR SELECT * FROM DEPENDENTS;
|
저장 프로시저의 실행
1. |
Oracle Explorer 윈도우에서 MYPACK Package를 확장하고, GETCURSORS를 마우스 오른쪽 버튼으로 클릭한 뒤 Run을 선택합니다.
| |
2. |
MAXROWS 매개변수 값으로 999를 입력하고 OK를 클릭합니다.
| |
3. |
EMPLOYEESCUR을 선택합니다.
| |
4. |
Employees 커서의 상세 정보가 표시됩니다. DEPENDENTSCUR를 선택합니다.
| |
5. |
Dependents 커서의 상세 정보가 표시됩니다.
|
이 튜토리얼을 통해, 다음과 같은 내용을 학습하였습니다:
테이블의 생성 및 데이터 조회 | ||
코드의 자동 생성 | ||
저장 프로시저의 생성 및 실행 |
[펌] http://cafe.naver.com/dotnetlist.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=573