chap 13. dao 를 이용하여 데이터베이스 만들기

17
2007 년 2 년년 - 1 - 경경경경경경경경경경경경 Chap 13. DAO Chap 13. DAO 경 경경경경 경 경경경경 경경경경경경 경경경 경경경경경경 경경경

Upload: bud

Post on 12-Jan-2016

109 views

Category:

Documents


0 download

DESCRIPTION

Chap 13. DAO 를 이용하여 데이터베이스 만들기. 01. DAO 개요 02. DAO 를 이용하여 응용 프로그램 만들기 03. DAO 를 이용하여 데이터베이스 생성하기. DAO 개요. DAO 특징 데이터 컨트롤은 세밀한 작업이나 데이터베이스 자체를 조작하는 등의 작업은 할 수 없음 데이터베이스를 파일 수준에서 다루지 않고 좀더 편하게 프로그래밍하기 위해 제공된 개체 DAO(Data Access Object) RDO(Remote Data Object) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 1 - 경기분석컴퓨터프로그래밍

Chap 13. DAOChap 13. DAO 를 이용하여 를 이용하여 데이터베이스 만들기 데이터베이스 만들기

Page 2: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 2 - 경기분석컴퓨터프로그래밍

01. 01. DAO 개요DAO 개요02. DAO02. DAO 를 이용하여 응용 프로그램 만들기를 이용하여 응용 프로그램 만들기03. DAO03. DAO 를 이용하여 데이터베이스 생성하기를 이용하여 데이터베이스 생성하기

Page 3: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 3 - 경기분석컴퓨터프로그래밍

DAO DAO 개요개요DAODAO

특징데이터 컨트롤은 세밀한 작업이나 데이터베이스 자체를 조작하는 등의 작업은 할 수 없음

데이터베이스를 파일 수준에서 다루지 않고 좀더 편하게 프로그래밍하기 위해 제공된 개체

DAO(Data Access Object)

RDO(Remote Data Object)

ADO(Active Data Object)

데이터베이스와 응용 프로그램을 효과적으로 연결해주는 역할 담당

Page 4: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 4 - 경기분석컴퓨터프로그래밍

DAO 구조

DAO DAO 개요개요

Page 5: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 5 - 경기분석컴퓨터프로그래밍

DAO 의 주요 개체DBEngine 개체 , Workspace 개체 , Recordset 개체

DBEngine 개체

DAO 개체 모델의 최상위 개체로 , DAO 개체의 계층 구조에 있는 다른 모든 개체를 포함하며 제어

주요 속성

DAO DAO 개요개요

Page 6: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 6 - 경기분석컴퓨터프로그래밍

Workspace 개체

열려 있는 데이터베이스의 저장소 역할하는 개체

DAO 개체가 실행되면 자동으로 기본 작업 영역 DBEngine.Workspace(0) 가 생성되고 Create Workspace 메소드로 생성된 다른 Workspace 와 달리 닫거나 삭제가 불가능

DAO DAO 개요개요

Page 7: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 7 - 경기분석컴퓨터프로그래밍

RecordSet 개체

기초 테이블에 있는 레코드 또는 질의를 실행한 후 생성되는 레코드를 표시

Recordset 개체를 사용하여 레코드 수준에서 데이터베이스에 있는 데이터 조작 가능

주요 속성

DAO DAO 개요개요

Page 8: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 8 - 경기분석컴퓨터프로그래밍

주요 메소드

DAO DAO 개요개요

Page 9: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 9 - 경기분석컴퓨터프로그래밍

01. DAO 01. DAO 개요개요02. 02. DAO를 이용하여 응용 프로그램 만들기DAO를 이용하여 응용 프로그램 만들기03. DAO03. DAO 를 이용하여 데이터베이스 생성하기를 이용하여 데이터베이스 생성하기

Page 10: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 10 - 경기분석컴퓨터프로그래밍

DAODAO 를 이용하여 응용 프로그램 만들기를 이용하여 응용 프로그램 만들기DAODAO 를 사용하여 주소록 만들기를 사용하여 주소록 만들기

DAO 를 이용하여 코드를 조작하기 전에 반드시 DAO 개체를 사용한다는 것을 비주얼 베이직에 알려야 함

[ 프로젝트 ] → [ 참조 ] 메뉴를 선택하고 대화상자에서‘ Microsoft DAP 3.51 Object Library’ 항목 선택

Page 11: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 11 - 경기분석컴퓨터프로그래밍

[[ 실습하기실습하기 ] ] 데이터베이스 응용 프로그램 만들기데이터베이스 응용 프로그램 만들기 폼에 컨트롤 추가하기

11

12

각 컨트롤의 속성 설정

Page 12: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 12 - 경기분석컴퓨터프로그래밍

데이터베이스를 연결하기 위해 다음과 같은 순서로 데이터베이스를 열어준다

① Databse 개체를 저장할 변수를 선언한다 .

Dim MyDB As Database Dim MyDB As Database

② Recordset 개체를 저장할 변수를 선언한다 .

Dim MyRecordset As Recordset Dim MyRecordset As Recordset

③ OpenDatabase 메소드를 사용하여 데이터베이스 파일을 열어준다 .

Set MyDB = DBEngine.Workspaces(0).OpenDatabase(“c:\Set MyDB = DBEngine.Workspaces(0).OpenDatabase(“c:\ 내문서내문서 \\ 주소록주소록 .mdb") .mdb")

④ OpenRecordset 메소드를 사용하여 Recordset 을 열어준다 .

Set MyRecordSet = MyDb.OpenRecordset("Set MyRecordSet = MyDb.OpenRecordset(" 주소록주소록 ", dbOpenTable)", dbOpenTable)

[[ 실습하기실습하기 ] ] 데이터베이스 응용 프로그램 만들기데이터베이스 응용 프로그램 만들기

Page 13: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 13 - 경기분석컴퓨터프로그래밍

데이터베이스파일과 Recordset 을 열어주는 구문을 Form_Load() 이벤트 핸들러에 작성

Private Sub Form_Load() Set MyDB = DBEngine.Workspaces(0).OpenDatabase(“c:\ 내문서 \ 주소록 .mdb") Set MyRecordSet = MyDB.OpenRecordset(" 주소록 ", dbOpenTable) End Sub

현재 레코드를 화면에 표시하도록 커맨드버튼 (cmdRecordDisp) 의 이벤트 핸들러를 작성

Private Sub cmdRecordDisp_Click() txtName = MyRecordset.Fields(" 이름 ") txtPhone = MyRecordset.Fields(" 전화번호 ") txtAddress = MyRecordset.Fields(" 주소 ") txtEmail = MyRecordset.Fields(" 전자우편주소 ") txtBirth = MyRecordset.Fields(" 생년월일 ") End Sub 프로그램 실행

[[ 실습하기실습하기 ] ] 데이터베이스 응용 프로그램 만들기데이터베이스 응용 프로그램 만들기

Page 14: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 14 - 경기분석컴퓨터프로그래밍

01. DAO 01. DAO 개요개요02. DAO02. DAO 를 이용하여 응용 프로그램 만들기를 이용하여 응용 프로그램 만들기03. 03. DAO를 이용하여 데이터베이스 생성하기DAO를 이용하여 데이터베이스 생성하기

Page 15: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 15 - 경기분석컴퓨터프로그래밍

DAODAO 를 이용하여 데이터베이스 파일 생성하기 를 이용하여 데이터베이스 파일 생성하기

생성할 주소록 테이블 구조

폼에 컨트롤 추가하기

Page 16: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 16 - 경기분석컴퓨터프로그래밍

DAODAO 를 이용하여 데이터베이스 파일 생성하기 를 이용하여 데이터베이스 파일 생성하기 Private Sub cmdCreateDB_Click() ' 데이터베이스 , 테이블 , 필드를 저장할 변수를 선언한다 Dim MyDB As Database Dim MyTable As TableDef Dim MyField As Field

' 새로운 데이터베이스 파일을 생성한다 Set MyDB = DBEngine.Workspaces(0).CreateDatabase("g:\vb\ 새로만든주소록 .MDB", dbLangKorean, dbEncrypt) ' 새로운 테이블을 생성한다 Set MyTable = MyDB.CreateTableDef(" 주소록 ")

' 테이블에 필드를 추가한다 Set MyField = MyTable.CreateField(" 번호 ", dbLong) MyTable.Fields.Append MyField Set MyField = MyTable.CreateField(" 이름 ", dbText, 10) MyTable.Fields.Append MyField Set MyField = MyTable.CreateField(" 휴대폰번호 ", dbText, 15) MyTable.Fields.Append MyField Set MyField = MyTable.CreateField(" 주소 ", dbText, 50) MyTable.Fields.Append MyField 'TableDefs 객체에 테이블을 추가한다 MyDB.TableDefs.Append MyTable MyDB.Close DBEngine.Workspaces(0).Close End Sub

버튼의 이벤트 핸들러 작성

Page 17: Chap 13. DAO 를 이용하여                 데이터베이스 만들기

2007 년 2 학기

- 17 - 경기분석컴퓨터프로그래밍

DAODAO 를 이용하여 데이터베이스 파일 생성하기 를 이용하여 데이터베이스 파일 생성하기

프로그램을 실행하고 버튼을 눌러 DB 가 생성되는지 확인