---
title: "데이터베이스 스파이에서 매개변수를 사용하는 SQL 쿼리 지원: 데이터베이스 스파이에서 SQL 템플릿 기능 지원"
date: 2017-11-16
categories:
  - development
  - tools
tags:
  - database-tool
  - databasespy
  - sql-query
description: Altova의 다중 데이터베이스 관리 도구인 DatabaseSpy는 매개변수를 포함한 복잡한 SQL 쿼리를 개발, 실행 및 개선하는 데 필요한 강력한 기능을 제공합니다.
---
Status: #blog

Tags:  #database-tool #databasespy #sql-query

Categories: [development](/blog/ko/category/development.md) | [database + sql](/blog/ko/category/database-sql.md)
# 데이터베이스 스파이에서 매개변수를 사용하는 SQL 쿼리 지원: 데이터베이스 스파이에서 SQL 템플릿 기능 지원

매개변수를 포함하는 SQL 쿼리, 또는 SQL 템플릿이라고도 하는 이 기능은 반복적인 데이터 보고 요구 사항에 대한 유연하고 효율적인 솔루션입니다. 예를 들어, 사용자가 여러 개의 값 세트를 사용하여 복잡한 조인 문을 쉽게 실행할 수 있습니다. Altova의 다중 데이터베이스 쿼리, 설계 및 편집 도구인 DatabaseSpy는 매개변수를 포함하는 복잡한 SQL 쿼리(SQL 템플릿이라고도 함)를 개발, 실행 및 개선하기 위한 강력한 기능을 제공합니다.

DatabaseSpy에서 매개변수를 포함한 SQL 쿼리를 프로토타입으로 제작하는 것은 다른 프로젝트에서 필요한 쿼리 개발 속도를 높일 수 있습니다. 예를 들어, MapForce에서 사용하는 데이터베이스 매핑이나 MobileTogether의 크로스 플랫폼 모바일 앱에서 사용하는 데이터베이스 데이터 소스 개발에 도움이 될 수 있습니다.

![빅데이터 지원 서비스](/blog/images/big-data-v2017.png)

<!--more-->

데이터베이스 스파이 [SQL 편집기](https://www.altova.com/ko/databasespy/sql-editor) 여기 "결과" 창에 표시된 내용은 특정 고객이 주문한 특정 제품의 모든 주문 내역을 보고하는 쿼리입니다

[![매개변수 없이 여러 테이블의 데이터를 결합하는 SQL 쿼리](/blog/images/SQL-query-without-parameters.png)](SQL-query-without-parameters.png)

이 쿼리는 제품명 "스프로킷"과 고객 번호 "525"를 매개변수로 대체함으로써 훨씬 더 포괄적으로 만들 수 있습니다. 아래 SQL 편집기 창에서 볼 수 있듯이, 쿼리의 6번과 7번 줄에서 매개변수 ":pname"과 ":custnum"이 각각 제품과 고객을 나타내도록 대체되었습니다.

[![매개변수를 사용하는 SQL 쿼리는 유연하고 효율적입니다](/blog/images/SQL-query-with-parameters.png)](SQL-query-with-parameters.png)

SQL 편집기 창의 왼쪽 상단에 있는 노란색 "실행" 버튼을 통해 파라미터가 포함된 쿼리를 실행하면, DatabaseSpy는 사용자가 실행에 필요한 값을 입력할 수 있는 대화 상자를 열고, 그 결과는 화면 오른쪽 하단에 표시됩니다.

[![SQL 쿼리에 필요한 매개변수 값을 제공합니다](/blog/images/SQL-query-result.png)](SQL-query-result.png)

DatabaseSpy에서 SQL 템플릿은 특별한 프로젝트 폴더에 저장될 수 있으며, 필요에 따라 동적으로 실행될 수 있습니다. 위에 제시된 것처럼, 사용자가 원하는 파라미터 값을 이미 알고 있는 경우에는 직접 실행하는 방법이 유용합니다. 하지만, 종종 사용자는 아직 익숙하지 않은 데이터를 탐색하기 위해 테스트 결과를 생성하는 쿼리를 만들어야 할 때가 있습니다. 테스트 쿼리를 실행한 후, 사용자는 결과 테이블에서 값을 선택하여 프로젝트 템플릿 폴더에 저장된 SQL 템플릿의 파라미터로 사용할 수 있습니다.

새로운 SQL 편집기 창이 열리고, 선택된 값들이 매개변수에 할당된 템플릿을 기반으로 자동으로 생성된 쿼리가 표시됩니다. 생성된 쿼리가 실행되고, 그 결과 테이블이 화면에 나타납니다.

[![예시를 통해 가치를 전달하고, 매개변수를 사용하여 SQL 쿼리를 실행합니다](/blog/images/SQL-parameters-from-result.png)](SQL-parameters-from-result.png)

**매개변수를 사용하는 SQL 쿼리를 다른 프로젝트에 적용하기**

DatabaseSpy에서 매개변수를 포함하는 SQL 쿼리를 생성하면, 해당 쿼리를 다른 프로젝트, 예를 들어 MobileTogether를 사용하여 개발된 모바일 앱과 같은 프로젝트에 쉽게 적용할 수 있습니다. MobileTogether는 Altova에서 제공하는 크로스 플랫폼 개발 도구입니다 [빠른 모바일 앱 개발](https://www.altova.com/ko/mobiletogether) (RMAD).

예를 들어, 저희가 제시하는 샘플 쿼리는 복잡한 판매 보고서 애플리케이션의 일부분일 수 있습니다. 모바일 개발자는 MobileTogether 디자이너 창의 SQL 문장 편집기 창에 해당 쿼리를 간단히 붙여넣고, 위와 같이 파라미터 값을 설정할 수 있습니다.

[![매개변수를 사용하는 SQL 쿼리는 다양한 다른 프로젝트에서도 활용될 수 있습니다](/blog/images/MobileTogether-SQL-Query.png)](MobileTogether-SQL-Query.png)

The MobileTogether Designer의 드래그 앤 드롭 방식 페이지 레이아웃 도구를 사용하면 개발자는 사용자가 고객 번호를 입력할 수 있는 입력 필드와 앱이 실행될 때 SQL 쿼리 매개변수 값을 설정하기 위해 제품 이름을 선택할 수 있는 콤보 상자를 만들 수 있습니다.

저희가 모바일 앱에 적용한 검색 쿼리는 안드로이드 기기에서는 다음과 같이 표시될 것입니다

[![SQL 쿼리와 매개변수를 실행하는 안드로이드 모바일 애플리케이션](/blog/images/SQL-result-in-mobile-app.png)](SQL-result-in-mobile-app.png)

MapForce 데이터 매핑, 변환 및 ETL 도구는 위에서 보이는 DatabaseSpy 대화 상자와 유사한 SQL 편집기 대화 상자를 포함합니다. MapForce의 경우, 다음과 같은 매개변수를 사용할 수 있습니다 [데이터 매핑](https://www.altova.com/ko/mapforce) 이 값은 런타임 시에 제공되거나, 매핑 과정 내에서 자체적으로 생성될 수 있습니다.

여기에서 설명된 모든 DatabaseSpy의 기능, 즉 매개변수를 사용하여 SQL 쿼리를 생성하는 기능은 물론 훨씬 더 많은 기능들이 아래에 나열된 데이터베이스에서 지원됩니다. DatabaseSpy는 사용자가 다양한 유형의 여러 데이터베이스에 동시에 연결하고, 심지어 데이터베이스 간의 구조와 내용을 비교할 수 있는 기능까지 제공합니다.

**지원되는 데이터베이스:**

- 불새
- IBM DB2 for iSeries® 시스템용 데이터베이스
- IBM DB2®
- 인포믹스(Informix)
- Microsoft Access™
- Microsoft® Azure SQL 데이터베이스
- Microsoft® SQL Server®
- MySQL®
- 오라클(Oracle)
- PostgreSQL (포스트그레스SQL)
- Progress OpenEdge
- SQLite는 임베디드형 관계형 데이터베이스 관리 시스템입니다
- Sybase®

(각 데이터베이스별 지원되는 버전의 [자세한 목록은 여기를 클릭](https://www.altova.com/ko/databasespy)하여 확인하실 수 있습니다.) DatabaseSpy, MobileTogether 또는 기타 Altova 제품을 [30일 동안 무료로 사용해 보실 수 있습니다](https://www.altova.com/ko/download)
