Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr

[DocWiki 번역] 연결 설정하기 (FireDAC)


Recommended Posts

Docwiki에 있는 "Setting up Connections (FireDAC)"을 번역한 글 (번역일: 2022년 7월 28일)

<< 위로 가기: [DocWiki 번역] 시작하기 (FireDAC)

FireDAC에서 데이터베이스 연결을 정의하는 절차를 안내한다. FireDAC은 다중-데이터베이스 연결 엔진으로써 각 DBMS 별 드라이버를 제공한다. 이 글에서는 마이크로소프트 SQL 서버에서 제공하는 Northwind 데모 데이터베이스를 사용하기 위한 연결 정의를 생성한다.

목차


1 개요

이 글에서 설명하는 내용:

  • FireDAC 연결 정의 (Connection Definition)란 무엇인가? FireDAC 연결 정의를 사용하여 해당 DBMS 연결 파라미터를 명시할 수 있다.
  • FDExplorer 유틸리티 사용하기: FDExplorer (파이어닥 익스플로러)를 사용하면, 시스템-전반에서 사용할 수 있는 연결 파라미터 세트(들)을 생성하여 중앙에 저장되는 파일 하나 안에 저장할 수 있다.
  • TFDConnection 디자인 타임 에디터 사용하기: TFDConnection의 디자인 타임 에디터를 사용하면, 디자인-타임 즉 개발 화면에서 연결 파라미터(들)을 지정할 수 있다.

2 FireDAC 연결 정의란 무엇인가?

FireDAC 컴포넌트(들)은 "연결 정의"라는 개념을 사용하여, (실행 할 때와 개발할 때 모두) FireDAC 드라이버 층에 필요로 하는 ServerDatabaseUser_Name 등  모든 연결 파라미터(들)을 제공한다. "연결을 정의하기 (FireDAC)"에는 기술적인 내용 (예: 실행 중에 델파이 코드를 사용하여 연결 정의를 생성하는 방법)이 자세히 설명되어 있다.

 개발 화면에서 FireDAC "연결 정의"를 명시하는 기본적인 방법은 두가지이다. 

  • 공유하는 중앙화된 영속 연결 정의를 생성하기 위해 FDExplorer를 사용하기
    • 이렇게 생성한 연결 정의는 TFDConnection.ConnectionDefName에 할당할 수 있다.
    • BDE를 알고 있는 고객이라면, FDExplorer가 BDE Administrator와 비슷한 도구라고 이해하면 된다.
  • 임시 연결 정의를 생성하기 위해 개발 화면에서 TFDConnection의 디자인 타임 에디터를 사용하기
    • 델파이 개발 화면에서 TFDConnection.Params 프로퍼티에 값을 할당한다.
    • ADO를 알고 있는 고객이라면, connection string builder와 비슷하다고 이해하면 된다.

3 FDExplorer 유틸리티 사용하기

FDExplorer 유틸리티는 "중앙화된 영속 연결 (persistent connection) 정의"를 관리할 때 중심이 되는 도구이다. "FDExplorer"에는 이 도구 사용법이 보다 자세히 설명되어 있다.

FDExplorer를 실행하려면, IDE에서 Tools > FireDAC > Explorer를 선택한다. 그리고 나서 키보드에서 Ctrl+N을 누르면 새 연결 정의 하나가 생성된다.

DriverID 파라미터 값에는 사용할 드라이버를 명시한다. DriverIDMSSQL로 지정하면, 해당 드라이버에 즉 MSSQL에 알맞은 파라미터(들)이 표시된다. 마이크로소프트 SQL 서버에 연결할 때 필요한 주요 파라미터는 다음과 같다.

파라미터 설명
Server 해당 SQL 서버를 식별할 수 있는 서버 실별자. 만약 호스트에 기본(default) 서버가 하나 밖에 없다면, 이 값은 호스트 주소이다. 
Database 기본(default) 데이터베이스의 이름
OSAuthent Yes로 지정되면, FireDAC은 윈도우 인증을 사용한다. (기본값인) No로 지정되면, MS SQL 서버 인증이 사용된다.
User_Name 로그인 유저 네임, OSAuthent=No인 경우에 사용됨.
Password 로그인 패스워드, OSAuthent=No인 경우에 사용됨.
MetaDefSchema 기본(default) 스키마 이름. 만약 MetaDefSchema과 같은 이름이 오브젝트 이름에 있으면 개발 코드에서는 이 스키마 이름을 제외한다.

아래 그림은 FDExplorer에서 연결 정의를 지정하는 화면이다.

700px-MSSQLConnDefSetup.png

Ctrl+A를 눌러서 해당 연결 정의를 FireDAC 연결 정의 파일에 저장한다. 새로 만들어진 연결 (위 그림에서는 "ConnectionDef1")을 테스트하려면, 트리뷰에서 해당 항목 (위 그림에서는 "ConnectionDef1") 옆에 있는 "+"를 클릭한다. 그러면 로그인 대화창이 표시된다. 로그인에 성공하면 트리뷰의 해당 항목이 확장되면서 연결된 데이터베이스의 오브젝트들을 찾아 갈 수 있게 된다.

알아둘 점: 델파이 IDE를 실행한 상태에서 그 안에서 FDExplorer를 열어서 "영속 연결" 정의를 새로 만든 경우에, 해당 연결은 FireDAC 개발 환경에서 바로 볼 수 없다. 영속 연결 정의 목록을 새로고침 해야 하는데, 그러려면, 델파이 IDE를 다시 시작해야 한다.

우리가 델파이 IDE 안에서 사용할 연결 정의가 준비되었다. 이제부터 이 연결 정의를 사용하려면, TFDConnection.ConnectionDefName 프로퍼티에 해당 연결 정의의 이름을 지정하기만 하면 된다. 

4 TFDConnection 디자인 타임 에디터 사용하기

FireDAC의 TFDConnection 컴포넌트는 디자인-타임 에디터가 제공된다. 여기에서는 "임시 연결" 파라미터(들)을 관리할 수 있다. 개발 화면에 올려 둔 TFDConnection 컴포넌트 중 무엇이든 하나를 더블-클릭한다. 그러면 해당 커넥션 에디터 대화창이 표시된다.

ConnEditorFD.png

커넥션 에디터에는 FDExplorer와 유사한 기능이 있다. 앞에서와 마찬가지로, 다음 사항들을 지정하는 것부터 시작해야 한다.

  • Driver ID: 임시 연결 정의를 아예 새로 만든다 (이 글에서도 그렇게 할 것이다)
  • Connection Definition Name: 이미 존재하는 "영속 연결"의 파라미터를 덮어쓰는 "임시 연결"을 하나 새로 만든다.

앞에서와 마찬가지로, 앞에서 지정했던 파라미터(들)을 채워넣어야 한다. 이 대화창에서 제공하는 기능은 다음과 같다.

  • Test 버튼: 연결 정의를 테스트한다.
  • Wizard 버튼: 해당 DBMS에 알맞은 연결 정의 마법사가 있다면 해당 마법사를 부른다.
  • Revert to default 버튼: 파라미터(들)을 기본(default) 값으로 재설정한다.
  • Help 버튼: 현재 드라이버의 파라미터를 설명하는 도움말 페이지로 간다
  • Info 버튼: 해당 DBMS에 연결을 시고하고 해당 연결에 대한 정보를 확보한다.
  • SQL Script 페이지: 해당 연결에서 SQL 스크립트 명령을 실행할 수 있다.

커넥션 에디터에서 OK 버튼을 누르고 나면, 지정한 연결 파라미터(들)일 해당 TFDConnection.Params 프로퍼티 안에 적재되고, TFDConnection.DriverName 프로퍼티에도 에디터에서 선택한 값이 지정된다.

5 연결 활성화하기

"영속 연결 정의"의 이름을 TFDConnection.ConnectionDefName에 할당한 후, 또는 "임시 연결 정의" 파라미터(들)을 TFDConnection.Params에 채워 넣은 후에는, TFDConnection.Connected 프로퍼티를 True로 지정하라. 지정한 파라미터(들)이 모두 알맞다면, 연결이 구축된다. 

6 기타 참조 (See Also)

6.1 예제

 

이 댓글 링크
다른 사이트에 공유하기

  • Kori changed the title to [DocWiki 번역] 연결 설정하기 (FireDAC)

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 토픽(기고/질문)에 답하기

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.