Presentation is loading. Please wait.

Presentation is loading. Please wait.

How to use OLEDB using ATL

Similar presentations


Presentation on theme: "How to use OLEDB using ATL"— Presentation transcript:

1 How to use OLEDB using ATL
Technical seminar How to use OLEDB using ATL 이근호 May 11,2007

2 차례 소개 OLEDB & ATL MSSQL 준비사항 단계별 코드와 결과 참고자료 Q&A

3 Step by Step MSSQL2000에 있는 DB의 테이블에서 레코드를 쓰고 읽어오는 전반적인 과정을 MFC에서 구현해보도록 한다.

4 OLEDB란? OLE DB is a set of COM-based interfaces that expose data from a variety of sources UDA(Universal Data Access) MS의 데이터 접근 전략 모든 유형의 데이터에 접근하기 위한 개방형 표준 데이터 엑세스 방법론 COM Interface Set 관계형DB + 비 관계형유 접근 가능!

5 UDA Architecture 접근방법 구성 특징 ODBC C API SQL base만 지원가능 OLEDB COM
Everything (DB, FS, Mail, SpreadSheet, PM tool) ADO OLEDB Wrapper Easy to use

6 OLEDB + ATL ATL (Active Template Library)의 일부분인 OLE DB 템플릿 라이브러리
Wizard 지원

7 준비사항 MSSQL2K Visual Studio 6.0 + SP6 Version 7도 가능! DB관련 추가 패치 필요
CMultipleResults 에서 memory leak 발생! BUG: Memory Leak in ATL OLE DB Consumer Template Functions

8 MSSQL DB생성 테이블 생성 - TblTest 일반적인 DB 설계 방법과 동일 필드명 타입 크기 seq int 4 data
char 16

9 MSSQL (Cont’d) Figure1. 테이블 구조

10 MSSQL (Cont’d) Figure2. 데이터 입력

11 Visual Studio Project

12 Visual Studio Project (Cont’d)

13 Code 추가된 헤더 실제 데이터 공간 컬럼과 데이터 바인딩 기본 실행 쿼리 데이터 초기화

14 Code (Cont’d) DB & Table Open Open DB Session

15 Code (Cont’d) 세션을 열고 엑세서를 이용해서 Ccommand 를 생성 쿼리에 해당하는 값을 반환! 접근 권한 설정
NULL부분이 쿼리 세션을 열고 엑세서를 이용해서 Ccommand 를 생성 쿼리에 해당하는 값을 반환!

16 Select Query Code> 쿼리 끝 까지 읽어들임 결과출력 Result>

17 Insert는 결과가 없으므로 CNoRowset!
Insert Query Code> Insert는 결과가 없으므로 CNoRowset! Ccommand 를 열때 쿼리 입력 Result>

18 Optimization Managed Area Unmanaged Area Connection Pool Memory Cache
Single Session Stored Procedure Property & Ccommand Management Query Class

19 Additional Type Control Multiple Accessor Stored Procedure
INT64 BLOB Multiple Accessor Stored Procedure Argument, Return value MSSQL functions

20 MSDN 참고자료 [한] MS 데이터 액세스 기술 권장 사항 [한] OLEDB 프로그래밍 [영] OLE DB Programmer’s Guide [한] ZDNet Korea 모든것은 OLE로 Visual Studio 6.0의 OLEDB ATL 관련 라이브러리는 다수의 memory leak과 버그가 존재하므로 정상적인 코드라고 생각하지만 문제가 발생하면 MSDN에서 관련 정보를 검색해본 다음 디버깅을 하는 순서로 하는것을 권장합니다.

21 Thank you Q&A Copyrights (c) 2007 www.fiadot.com All rights reserved.
Copyrights (c) All rights reserved. By Lee Gun-Ho, fiadot at fiadot.com


Download ppt "How to use OLEDB using ATL"

Similar presentations


Ads by Google