여러분의 FireDAC 애플리케이션에서 DBMS와 접속하기 위해서는 DBMS 제조사에서 제공하는 네이티브 클라이언트 드라이버를 설치해야 합니다. 네이티브 클라이언트 드라이버는 각 제조사 홈페이지를 통해 다운로드 받아 설치할 수 있습니다.

 

오라클 서버에 접속하기 위해서는 오라클 클라이언트 소프트웨어를 설치해야 합니다.

오라클 클라이언트 소프트웨어

오라클 클라이언트 소프트웨어는 아래 2가지 방식으로 제공합니다.

 
  • "Fat" 오라클 클라이언트 - 설치형 오라클 클라이언트 프로그램. 기본 오라클 홈경로에 설치된 오라클 드라이버 이용합니다.
  • "Thin" 오라클 클라이언트 - 파일형 오라클 클라이언트 프로그램. 윈도우 PATH 또는 실행파일과 동일한 경로에 아래 라이브러리 복사해 사용합니다.
    • oci.dll
    • oraocci11.dll
    • oraociei11.dll
    • orasql11.dll

[따라하기] FireDAC을 이용해 오라클 서버와 연결하기

1, 오라클 클라이언트 소프트웨어 설치(Thin 오라클 클라이언트)

오라클 다운로드 페이지( http://www.oracle.com/technetwork/indexes/downloads/index.html )에서 Database > Instant Client 메뉴를 선택합니다.

델파이 개발환경에 맞는 Instant Client for Microsoft Windows (32-bit)를 선택합니다.

상단의 라이선스에 동의 하고 

본인의 오라클 서버 버전의 파일을 찾아 다운로드 합니다.(저는 11.2.0.2 버전의 오라클 서버와 연결합니다.) 

(로그인이 필요하니 오라클 계정이 없는 경우 계정 생성 후 로그인하여 진행합니다.)

 

zip 파일 다운로드 완료 후 압축을 해제합니다.

 

아래 4개 파일을 복사 후 RAD Studio 실행파일 경로(XE7 기준 기본경로: C:\Program Files (x86)\Embarcadero\Studio\15.0\bin)에 복사합니다.

(오라클에 접속할 애플리케이션의 실행파일 경로 또는 윈도우 PATH에 등록된 경로에 오라클 클라이언트 라이브러리가 있어야 합니다.)

  • oci.dll
  • oraocci11.dll
  • oraociei11.dll
  • orasql11.dll

2, 테스트 프로그램 작성

오라클 서버와 접속해 하나의 테이블 데이터를 DBGrid에 표시하며 오라클 서버 연결을 확인합니다.

사전 준비사항

개발PC에서 오라클서버와 접속 가능해야 합니다. 오라클에서 제공하는 SQL Plus 툴(다운로드: 오라클 서버 버전과 맞는 SQLPlus 다운로드)을 이용해 오라클 서버와 접속을 확인합니다.

화면구성과 필요 컴포넌트 추가

 

새로운 프로젝트를 생성합니다.(File > New > VCL Form Application - Delphi)

 

아래의 화면과 표를 참고해 폼에 컴포넌트를 추가합니다.

 

 상위 오브젝트

오브젝트 

속성 

 값(또는 설명)

 Form1  DGGrid1 Width, Height  적당한 크기로 조정 
 FDConnection1    

 FDTable1

 

 

 DataSource1

DataSet

FDTable1 

 FDPhysOracleDriverLink1

 

 

 FDGUIxWaitCursor1

 

 

오라클 서버 연결 설정

폼(또는 데이터모듈) 위에 TFDConnection 컴포넌트를 추가하고 추가한 컴포넌트를 더블클릭 해 "FireDAC Connection Editor" 대화상자를 표시하고 아래 정보를 입력합니다.

 

  • Driver ID : Ora
  • Database : 오라클서버의 주소(형식: IP주소:Port/ServiceName, 예> 192.0.0.1:1521/orcl)
  • User_Name : 오라클 계정
  • Password : 오라클 계정의 비밀번호

테스트 버튼을 눌러 입력한 정보가 정확한지 확인합니다.(로그인 창이 나오면 OK 버튼을 누릅니다.)

Connection Editor 창의 OK 버튼을 눌러 설정을 저장합니다.

TFDConnection 컴포넌트의 LoginPromt 속성을 False로 설정 후 Connected 속성을 True로 설정해 연결합니다.

 

오라클 서버의 데이터 조회 확인

테이블 컴포넌트(FDTable1) 선택 후 TableName 속성에서 조회할 테이블을 선택합니다.

FDTable1의 Active 속성을 True로 설정합니다.

 

DBGrid1의 DataSource를 DataSourc1으로 설정 해 테이블의 데이터가 DBGrid에 표시되는지 확인합니다.

3, 배포하기

애플리케이션 배포 시 오라클 클라이언트 드라이버의 라이브러리 4종을 실행파일과 같은 경로로 함께 배포합니다.

 

문제해결

"Cannot initialize OCI environment" 오류 발생 시

연결 설정 후 아래와 같은 오류가 발생하는 경우

oci.png

오라클 클라이언트 v 9.0 이상을 설치하시기 바랍니다.(유니코드 지원)

운영체제가 64비트이더라도, 32bit Windows 용 오라클 클라이언트 라이브러리를 설치하시기 바랍니다.(RAD 스튜디오 IDE가 32비트 입니다.)

 

기타 오라클 서버 질문 참고

엠바카데로 기술문서의 오라클 서버 질문 페이지를 참고하시기 바랍니다.

참고


번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 14387
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13023
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 15532
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 21064
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 22297
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 17933
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 38228
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 173741
483 [오프라인 세미나] 델파이 마이그래이션 - 실전 사례로 살펴보는 소프트웨어 현대화 전략 [1] 관리자 2019.09.27 659
482 n [도서/PDF/소스코드] 시작하는 사람들을 위한 델파이 프로그래밍-모듈 12. String(문자열)들 [1] 관리자 2019.03.29 659
481 [프로그래밍 애피타이저] 8장 SQL 정의와문법 file 김원경 2020.04.09 658
480 [2020년 상반기] 기술자료 TOP 10 - 개발자들이 가장 많이 클릭한 기술자료는? 관리자 2020.07.07 657
479 [고객 사례- 쇼핑, 모바일앱, 델파이] 매일 최저가 상품을 보여주는 'Daily Offer' 관리자 2017.06.21 657
478 [업데이트][핫픽스][10.2 도쿄] FireMonkey의 Android 호환성 패치 험프리 2017.07.03 657
477 [고객 사례-영상 제작, 3D, 델파이] FrameForge - 3D 영상 제작 스토리보드 제작용 애플리케이션 관리자 2016.11.30 656
476 이 달의 기술자료 - 2016년 05월 file 험프리 2016.04.26 655
475 2020 년 3 월 GM 업데이트 file 김원경 2020.03.30 655
474 n [도서/PDF/소스코드] 시작하는 사람들을 위한 델파이 프로그래밍-모듈 4. 표준 수학 함수들 관리자 2019.03.29 655
473 첨부파일을 포함한 이메일 전송하기(iOS, 안드로이드, 윈도우) file 험프리 2017.08.04 654
472 C++빌더/델파이 개발자를 위한 최적의 데이터베이스 관리 도구 - 아쿠아 데이터 스튜디오 file 관리자 2018.12.11 653
471 [고객사례-생산성도구, 델파이] Change-Pro for Excel - 엑셀 변경항목 분석 프로그램 관리자 2017.10.27 653
470 델파이, C++빌더의 윈도우10과 High DPI 디스플레이 지원 김원경 2020.02.28 652
469 [도서/PDF/소스코드] 시작하는 사람들을 위한 델파이 프로그래밍-모듈 19. StringGrid 콘트롤 관리자 2019.03.29 652
468 IBM 왓슨과 인공지능(AI) 활용하기 - 델파이/C++빌더 관리자 2019.10.25 651
467 [업데이트][핫픽스][10.3] 2018년 12월 패치 험프리 2018.12.17 649
466 엔터프라이즈 커넥터 설치하기 file 험프리 2019.10.01 648
465 리펙토링 1-클래스, 정적메소드, 속성, 필드 이동하기 file 김원경 2017.02.23 645
464 [베를린 U2] 윈도우 10 캘린더 활용하기 (1분 동영상) 험프리 2016.11.15 645