10.4 출시 후 우리는, 볼랜드 시절의 델파이와 C++빌더로 만들어진 애플리케이션을 새로 현대화하는 업그레이드 마이그레이션을 보다 쉽게 할 수 있는 길을 더 많이 제공해오고 있다. (델파이 최신 버전이 최근의 기술 트렌드를 어떻게 반영하고 있는지에 대한 한글 기술 백서는 www.devgear.co.kr/archives/4588 참조)

새 버전으로 업그레이드 현대화해야 할 이유가 많지만, 가끔은 실현 가능성 면에서 다소 떨어진다는 느낌이 들 때가 있다. 예를 들어 신경쓸 일도 없이 오랫동안 잘 작동해 온 데이터 액세스 계층과 플랫폼에서 데이터를 마이그레이션하려면 두려움이 앞설 수도 있다. 

볼랜드 시절의 델파이와 C++빌더로 만들어진 애플리케이션에서는 데이터 액세스 계층으로 BDE가 흔하게 사용되었다. 하지만, 시간이 가면서 BDE는 역사속으로 사라지고 지금은 우리 모두가 좋아했던 이 32비트 BDE를 능가하는 새로운 기술들이 그 자리를 차지하고 있다.

BDE를 제거하는 첫 단계는 BDE를 대체한 데이터 액세스 컴포넌트를 결정하는 것이다. UniDAC, IBeXpress 등 몇가지 선택지가 있다. 이 글에서는 현재 RAD스튜디오, 델파이, C++빌더의 엔터프라이즈 에디션과 아키텍트 에디션에 들어 있는 FireDAC을 사용한다. (FireDAC에 대한 더 자세한 내용은 FireDAC Docwiki 참조)

BDE에서 FireDAC으로 마이그레이션하기

데이터 액세스 계층을 교체하는 것은 해를 거듭하면서 점점 더 쉬워지고 있다. 지금은 BDE용과 DBExpress용 reFind (델파이에서만 작동), C++빌더와 델파이 모두에서 작동하는 Delphi Parser의 DBE to FireDAC 마이그레이션 도구 등 여러 도구들이 있다. 아래 비디오(총 7분 30초)는 reFind 도구를 사용하여 폼에서 사용되는 BDE 컴포넌트를 FireDAC으로 마이그레이션하는 방법을 보여준다. 

[비디오 1] BDE to FireDAC, 이 비디오에 대한 한글 요약 번역은 여기를 참조.

BDE 데이터 소스를 인터베이스(InterBase)로 지정하기

컴포넌트 마이그레이션을 마치고, 기존의 데이터베이스를 그대로 사용하는 경우도 있다. FireDAC은 파라독스(Paradox) 등 기타 데스트톱 데이터베이스를 지원할 때는 ODBC를 사용하지만, 오라클, DB2, MySQL, MSSQL, InterBase/FireBird 등등 널리 사용되는 많은 데이터베이스들의 경우에는 전용 드라이버를 사용한다.

인터베이스 데이터베이스에는 데이터베이스 스키마를 그려서 생성하거나 리버스 엔지니어링을 할 수 있는 데이터베이스 설계 도구가 들어있어서 데이터 임포트/익스포트 기능을 사용할 수 있다. 하지만, 해당 절차를 더 쉽게 할 수 있는 도구들도 있다. 프리웨어인 InterBase Datapump 역시 그 중 하나이다. 나는 BDE 데이터 소스를 인터베이스 데이터베이스로 마이그레이션할 때 이 도구를 사용한다.

[비디오 2] 인터베이스 DataPump 사용하기, 이 비디오에 대한 한글 요약 번역은 여기를 참조.

마이그레이션을 통해 오래된 기술을 제거하는 것에 대한 자료는 많다. Embarcadero Upgrade and Migration Center 에서 델파이와 C++빌더로 만들어진 오래된 애플리케이션을 현대화하고 업그레이드 하는 작업을 어떻게하면 쉽게 할 수 있는지를 알 수 있다.

역자 주, 엠바카데로의 영문 자료와 함께 데브기어의 한글 자료도 도움이 될 수 있습니다.

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 15498
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13974
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16508
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22066
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23288
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18934
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39274
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174737
52 가장 강력한 ‘데이터베이스 연동’ 기능을 자체적으로 제공하는 프레임워크는? (델파이 VS. WPF VS. ELECTRON) 관리자 2021.03.04 670
51 [고객 사례- 쇼핑, 모바일앱, 델파이] 매일 최저가 상품을 보여주는 'Daily Offer' 관리자 2017.06.21 663
50 [오프라인 세미나] 델파이 마이그래이션 - 실전 사례로 살펴보는 소프트웨어 현대화 전략 [1] 관리자 2019.09.27 662
49 [고객사례-생산성도구, 델파이] Change-Pro for Excel - 엑셀 변경항목 분석 프로그램 관리자 2017.10.27 661
48 엔터프라이즈 커넥터 설치하기 file 험프리 2019.10.01 656
47 RAD서버 솔루션 시리즈: 필드 서비스 애플리케이션 관리자 2018.06.01 625
46 [온라인 세미나 시리즈] 윈도우 10으로 현대화 할 때 확인해야 할 개발팁 file 관리자 2019.09.09 623
45 이 달의 기술자료 - 2021년 04월 험프리 2021.03.25 585
44 C++ 언어와 C++빌더의 23년! 관리자 2020.03.13 579
43 엔터프라이즈 커넥터로 VCL 애플리케이션에서 '구글 시트' 데이터 조회 및 편집하기 험프리 2019.10.04 575
42 [10.3 리오] 기타 컴파일러, 데이터, RTL 개선사항 험프리 2018.12.06 563
41 [10.4 시드니][업데이트 2] What's NEW! 신기능 자세히 보기 관리자 2021.02.26 559
40 [다시보기] RAD Studio 10 시애틀 딥다이브 세션 다시보기(영문) Humphery 2015.10.02 552
39 [사례 소개] 데브기어 마이그레이션 유상 컨설팅 사례 험프리 2020.04.22 552
38 이 달의 기술자료 - 2017년 10월 file 험프리 2017.09.26 549
37 [코드레이지11] FireDAC 이해하기, RAD 스튜디오 데이터 엑세스 프레임워크 선택 - Cary Jensen 험프리 2016.11.24 539
» BDE/파라독스를 인터베이스(INTERBASE)로 마이그레이션 하기 관리자 2021.05.31 537
35 이 달의 기술자료 - 2015년 12월 file 험프리 2015.11.27 531
34 이 달의 기술자료 - 2015년 10월 file 험프리 2015.09.25 529
33 데브기어 컴포넌트 컨버터 소개(마이그레이션 자동화 도구) 험프리 2020.01.29 526