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

[가이드]FireDAC으로 데이터베이스 애플리케이션을 만들기 첫걸음


Recommended Posts

Docwiki에 있는 "First Steps to Use FireDAC"을 번역한 글: 번역일: 2022년 4월 18일

위로 가기: Getting Started (FireDAC)

목차


1 도입 (Introduction)

이 튜토리얼에는 크게 세가지 영역이 있다:

  • 데이터베이스에 연결 설정하기: 델파이를 사용하여 데이터베이스에 연결되는 애플리케이션을 만드는 방법
  • 데이터베이스에서 행을 선택하여 가져오기: 개발 화면에서 데이터를 가져와서 그리드(grid)에 표현하기
  • 애플리케이션이 실행되도록 준비하기: 데이터베이스 애플리케이션을 표준 실행 파일로 만들어 실행하기 위해 필요한 절차

사용된 화면은 RAD 스튜디오 2007이다, 따라서 RAD 스튜디오 최신 버전에서는 조금 다를 수도 있다.

 

2 데이터베이스에 연결을 설정하기 (Establishing the Connection to the Database)

이 글에서는, MS-SQL 서버의 Northwind 데모 데이터베이스와 미리 정의된 연결 정의(connection definition) - MSSQL_Demo를 사용한다. 새 "VCL Forms Application Delphi for Win32"를 생성하고 시작하자.

첫째, TFDConnection 컴포넌트를 폼 위에 끌어 놓는다. 이 컴포넌트는 RAD 스튜디오 툴 팔레트 (Tool Palette) 안에 "FireDAC" 섹션 안에 들어있다. 이 컴포넌트는 데이터베이스 연결을 설정하고 제어한다.

그 다음, TFDConnection 컴포넌트의 ConnectionDefName 프로퍼티에서 드롭다운 목록을 펼친 후 MSSQL_Demo를 선택한다. 그러면 이 연결(connection) 컴포넌트에서 해당 연결 정의(connection definition)를 사용한다. 연결 정보를 미리 정의해 놓은  연결 정의를 사용하면 (서버 이름, 기본 데이터베이스 지정 등) 연결 파라미터를 추가로 입력할 필요가 없다.

Connected 프로퍼티를 True로 지정하면, FireDAC이 로그인 대화창(Login Dialog)을 표시한다:
FireDACLoginMSSQL.png

여기에 사용자 로그인 정보를 입력한다. 기본 설정이라면, 로그인 시도를 3번까지 할 수 있다. 모두 실패하면, 로그인 단계가 실패로 판정되고 에러 메시지가 표시된다.

OK 버튼을 클릭하여 데이터베이스에 연결을 설정한다. DBMS에서 사용자 세션을 지원한다면, 이 때  DBMS 안에 사용자 세션이 생성된다.

연결 설정을 성공한 후에는, Connected 프로퍼티는 True로 설정된 그대로 유지된다. 그렇지 않으면 False로 재설정되고 FireDAC은 해당 에러 메시지를 표시한다.

 

3 데이터베이스에서 행을 선택하여 가져오기 (Selecting Rows from the Database)

이제 TFDQuery 컴포넌트를 툴 팔레트의 "FireDAC" 섹션에서 끌고와서 폼(form) 위에 놓아 둔다. 이 컴포넌트는 SQL 명령(command)을 수행하는고 데이터베이스에서 행(row)를 담아 오고, 변경된 데이터를 다시 데이터베이스로 전송(post)하는 역할을 담당한다.  TFDQuery 컴포넌트의 Connection 프로퍼티를 앞에서 올려둔 FDConnection1으로 지정하여 이 쿼리가 해당 데이터베이스 연결을 사용하도록 한다.

참고: 만약 폼(form) 또는 데이터 모듈(datamodule)에 이미 TFDConnection 컴포넌트가 하나 이상 놓여져 있다면, TFDQuery 컴포넌트가 놓여질 때 가장 먼저 놓여진 연결이 자동으로 그 TFDQuery 컴포넌트의 Connection 프로퍼티에 지정된다.

SQL 프로퍼티를 클릭하여 에디터 창을 열고 그 안에 아래 SQL 명령문을 넣는다:

SELECT * FROM Orders

OK 버튼을 클릭하여 에디터 창을 닫는다. 그러면 해당 SQL 명령문이 TFDQuery 컴포넌트의 SQL 프로퍼티에 지정된다. 그 다음, 델파이의 표준 TDataSource 컴포넌트를 툴 팔레트의 "Data Access" 섹션에서 끌고와서 폼(form) 위에 놓아 둔다. TDataSource 컴포넌트의 DataSet 프로퍼티를 앞에서 놓아둔 FDQuery1로 지정한다. 이제 TDBGrid 컨트롤을 툴 팔레트의 "Data Controls" 섹션에서 끌고와서 폼(form) 위에 놓아 둔다. 그리고, 이 TDBGrid의 DataSource 프로퍼티를 앞에서 놓아둔 DataSource1으로 지정한다.

 

마지막으로, FDQuery1의 Active 프로퍼티를 True로 지정한다. 그러면 해당 SQL 명령(command)이 DBMS로 전달되어서, 명령이 실행되고 결과 세트( result set)가 반환된다. 이 데이터는 DBGrid1 컨트롤에 표현된다.
FDQuerySetActive.png

 

4 애플리케이션이 실행되도록 준비하기 (Preparing the Application for Run Time)

이 애플리케이션이 실행되려면 다음과 같은 작업이 필요하다:

  • TFDPhysMSSQLDriverLink 컴포넌트를 툴 팔레트의 "FireDAC Links" 섹션에서 끌고와서 폼(form) 위에 놓아 둔다.
  • TFDGUIxWaitCursor 컴포넌트를 툴 팔레트의 "FireDAC UI" 섹션에서 끌고와서 폼(form) 위에 놓아 둔다. 

이제 애플리케이션이 실행될 준비가 되었다. 위 컴포넌트 2개는 이 데이터베이스 애플리케이션에서 필요한 유닛들이 당신의 애플리케이션 실행파일(executable) 안에서 링크(link)될 수 있도록 한다. 실전에서는 이 컴포넌트들을 주 데이터 모듈(data module)안에 놓아 두는 것이 전형적이다.

 

5 요약 (Summary)

이 튜토리얼은 델파이에서 FireDAC을 이용하여 간단한 클라이언트-서버 애플리케이션을 만드는 방법을 보여준다. FireDAC의 연결(connection) 컴포넌트와 쿼리(query) 컴포넌트를 사용하여 코드를 한 줄도 쓰지 않고 데이터베이스에 연결을 설정하고 행(row)을 클라이언트로 담아와서 표현해보았다. 연결 정의에 대한 자세한 내용은 "연결 설정하기"를 참고하라. 또한 FireDAC\Samples\Getting Started 폴더에는 다른 DBMS 데모 애플리케이션들이 들어있으니 참고하기 바란다.

 

6 기타 자료 (See Also)

 


View full 엠바카데로 개발도구 가이드

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

이 토의에 참여하세요

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

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...

중요한 정보

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