SQL Azure 연결 유형(SSRS)

Microsoft SQL Azure 데이터베이스는 SQL Server 기술을 기반으로 작성된 클라우드 기반의 호스팅되는 관계형 데이터베이스입니다. SQL Azure 데이터베이스의 데이터를 보고서에 포함하려면 SQL Azure 유형의 보고서 데이터 원본을 기반으로 하는 데이터 집합이 있어야 합니다. 이 기본 제공 데이터 원본 유형은 SQL Azure 데이터 확장 프로그램을 기반으로 합니다. 이 데이터 원본 유형을 사용하여 SQL Azure 데이터베이스에 연결하고 데이터를 검색할 수 있습니다.

이 데이터 확장 프로그램은 다중값 매개 변수, 서버 집계 및 연결 문자열과 별개로 관리되는 자격 증명을 지원합니다.

SQL Azure가 사용자 컴퓨터의 SQL Server 인스턴스와 비슷하기 때문에 SQL Azure 데이터베이스에서 데이터를 가져오는 방법은 몇 가지 예외를 제외하고 SQL Server에서 데이터를 가져오는 방법과 동일합니다. SQL Azure 데이터베이스 기능은 SQL Server 2008에 맞게 조정됩니다.

SQL Azure에 대한 자세한 내용은 msdn.microsoft.com의 "SQL Azure"를 참조하십시오.

이 항목의 정보를 통해 데이터 원본을 작성할 수 있습니다. 단계별 지침은 방법: 데이터 연결이나 데이터 원본 추가 및 확인(보고서 작성기 3.0 및 SSRS)을 참조하십시오.

문서 내용

연결 문자열

자격 증명

쿼리

매개 변수

주의

방법 도움말 항목

관련 섹션

연결 문자열

SQL Azure에 연결하면 클라우드의 데이터베이스 개체에 연결하게 됩니다. 온사이트 데이터베이스와 마찬가지로 호스팅되는 데이터베이스에는 여러 테이블, 뷰 및 저장 프로시저가 있는 스키마가 여러 개 있을 수 있으므로 쿼리 디자이너에서 사용할 데이터베이스 개체를 지정합니다. 연결 문자열에 데이터베이스를 지정하지 않을 경우 관리자가 할당한 기본 데이터베이스에 연결됩니다.

데이터 원본 연결에 사용할 자격 증명 및 연결 정보는 데이터베이스 관리자에게 문의하십시오. 다음 연결 문자열 예에서는 AdventureWorks라는 호스팅되는 예제 데이터베이스를 지정합니다.

Data Source=<host>;Initial Catalog=AdventureWorks; Encrypt=True;

또한 데이터 원본 속성 대화 상자를 사용하여 사용자 이름과 암호 같은 자격 증명을 제공할 수 있습니다. 그러면 User Id 및 Password 옵션이 자동으로 연결 문자열에 추가되기 때문에 이러한 옵션을 연결 문자열의 일부로 입력할 필요가 없습니다.

연결 문자열에 대한 자세한 내용 및 예는 보고서 작성기 3.0의 데이터 연결, 데이터 원본 및 연결 문자열를 참조하십시오.

자격 증명

Windows 인증(통합 보안)이 지원되지 않기 때문에 Windows 인증을 사용하여 SQL Azure에 연결하려고 하면 오류가 발생합니다. SQL Azure에서는 SQL Server 인증(사용자 이름 및 암호)만 지원하므로 SQL Azure에 연결할 때마다 자격 증명(로그인 및 암호)을 제공해야 합니다.

자격 증명에는 데이터베이스에 액세스할 수 있는 권한이 있어야 합니다. 쿼리에 따라 저장 프로시저를 실행하고 테이블 및 뷰에 액세스할 수 있는 권한과 같은 다른 사용 권한이 필요할 수 있습니다. 외부 데이터 소스의 소유자는 사용자에게 필요한 데이터베이스 개체에 대한 읽기 전용 권한을 제공할 수 있는 자격 증명을 구성해야 합니다.

보고서 작성 클라이언트에서는 다음 옵션을 사용하여 자격 증명을 지정할 수 있습니다.

  • 저장된 사용자 이름 및 암호 사용. 보고서 데이터를 포함하는 데이터베이스가 보고서 서버와 다른 경우 발생하는 이중 홉을 협상하려면 Windows 자격 증명을 자격 증명으로 사용하도록 옵션을 선택합니다. 데이터 원본에 연결한 후 인증된 사용자를 가장하도록 선택할 수도 있습니다.

  • 자격 증명 필요 없음. 이 옵션을 사용하려면 보고서 서버에서 무인 실행 계정을 구성해야 합니다. 자세한 내용은 msdn.microsoft.com의 Reporting Services 설명서에서 무인 실행 계정 구성을 참조하십시오.

자세한 내용은 데이터 연결, 데이터 원본 및 연결 문자열(SSRS) 또는 보고서 작성기 3.0에 자격 증명 지정을 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동

쿼리

쿼리는 보고서 데이터 집합에 사용하기 위해 검색할 데이터를 지정합니다. 쿼리 결과 집합의 열은 데이터 집합의 필드 컬렉션을 채웁니다. 쿼리가 여러 결과 집합을 반환할 경우 보고서는 쿼리가 검색한 첫 번째 결과 집합만 처리합니다. SQL Server 데이터베이스와 SQL Azure 데이터베이스는 지원되는 데이터베이스 크기 등이 다를 수 있지만 SQL Azure 데이터베이스에 대한 쿼리를 작성하는 방법과 SQL Server 데이터베이스에 대한 쿼리를 작성하는 방법은 비슷합니다. BACKUP과 같은 일부 Transact-SQL 문은 SQL Azure에서 지원되지 않지만 이러한 문은 보고서 쿼리에 사용하는 문이 아닙니다. 자세한 내용은 SQL Server 연결 유형(SSRS)를 참조하십시오.

기본적으로 그래픽 쿼리 디자이너에 나타낼 수 있는 새 쿼리를 만들거나 기존 쿼리를 열 경우 관계형 쿼리 디자이너를 사용할 수 있습니다. 다음과 같은 방법으로 쿼리를 지정할 수 있습니다.

  • 대화식으로 쿼리를 작성합니다. 관계형 쿼리 디자이너를 사용합니다. 관계형 쿼리 디자이너는 테이블, 뷰, 저장 프로시저 및 기타 데이터베이스 항목을 데이터베이스 스키마별로 구성하여 계층 구조로 표시합니다. 테이블 또는 뷰에서 열을 선택하거나 저장 프로시저 또는 테이블 반환 함수를 지정합니다. 필터 조건을 지정하여 검색할 데이터 행 수를 제한합니다. 매개 변수 옵션을 설정하여 보고서를 실행할 때 필터를 사용자 지정합니다.

  • 쿼리를 입력하거나 붙여 넣습니다. 텍스트 기반 쿼리 디자이너를 사용하여 Transact-SQL 텍스트를 직접 입력하거나, 다른 원본에서 쿼리 텍스트를 붙여 넣거나, 관계형 쿼리 디자이너를 사용하여 작성할 수 없는 복잡한 쿼리를 입력하거나, 쿼리 기반 식을 입력할 수 있습니다.

  • 파일 또는 보고서에서 기존 쿼리를 가져옵니다. 쿼리 디자이너에서 쿼리 가져오기 단추를 사용하여 .sql 파일 또는 .rdl 파일을 찾아서 쿼리를 가져옵니다.

텍스트 기반 쿼리 디자이너에서는 다음과 같은 두 가지 모드를 지원합니다.

  • Text   데이터 원본에서 데이터를 선택하는 Transact-SQL 명령을 입력합니다.

  • Stored Procedure   저장 프로시저 목록에서 선택합니다.

자세한 내용은 관계형 쿼리 디자이너 사용자 인터페이스(보고서 작성기 3.0)텍스트 기반 쿼리 디자이너 사용자 인터페이스(보고서 작성기 3.0)를 참조하십시오.

쿼리의 복잡도와 쿼리가 반환하는 데이터에 따라 쿼리를 완료하는 데 시간이 오래 걸릴 수 있습니다. 이 SQL Azure 릴리스에서는 유휴 연결 및 장기 실행 쿼리 또는 트랜잭션이 5분 후에 닫힙니다. 완료하는 데 5분 이상이 필요한 쿼리는 실패합니다. SQL Azure에서 데이터를 가져올 때는 최대한 효율적으로 보고서 쿼리를 디자인하는 것이 좋습니다.

SQL Azure에서 사용하는 그래픽 쿼리 디자이너는 요약 데이터만 검색하는 쿼리를 작성하는 데 도움이 되는 그룹화 및 집계를 기본적으로 지원합니다. Transact-SQL 언어 기능은 GROUP BY 절, DISTINCT 키워드 및 SUM, COUNT 등과 같은 집계입니다. 텍스트 기반 쿼리 디자이너는 그룹화 및 집계를 비롯한 Transact-SQL 언어를 완벽하게 지원합니다. Transact-SQL에 대한 자세한 내용은 msdn.microsoft.com의 SQL Server온라인 설명서에 있는 Transact-SQL 참조(데이터베이스 엔진)를 참조하십시오.

Text 쿼리 유형 사용

텍스트 기반 쿼리 디자이너에서는 Transact-SQL 명령을 입력하여 데이터 집합의 데이터를 정의합니다. 예를 들어 다음 Transact-SQL 쿼리는 마케팅 지원을 담당하는 모든 직원의 이름을 선택합니다.

SELECT
  HumanResources.Employee.BusinessEntityID
  ,HumanResources.Employee.JobTitle
  ,Person.Person.FirstName
  ,Person.Person.LastName
FROM
  Person.Person
  INNER JOIN HumanResources.Employee
    ON Person.Person.BusinessEntityID = HumanResources.Employee.BusinessEntityID
WHERE HumanResources.Employee.JobTitle = 'Marketing Assistant' 

쿼리를 실행하고 결과 집합을 표시하려면 도구 모음에서 실행 단추(!)를 클릭합니다.

이 쿼리에서 매개 변수를 사용하려면 쿼리 매개 변수를 추가합니다. 예를 들어 WHERE 절을 다음과 같이 변경합니다.

WHERE HumanResources.Employee.JobTitle = (@JobTitle)

쿼리를 실행하면 쿼리 매개 변수에 해당하는 보고서 매개 변수가 자동으로 만들어집니다. 자세한 내용은 이 항목의 뒷부분에 나오는 쿼리 매개 변수를 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동

StoredProcedure 쿼리 유형 사용

다음 중 한 가지 방법으로 데이터 집합 쿼리에 대해 저장 프로시저를 지정할 수 있습니다.

  • 데이터 집합 속성 대화 상자에서 저장 프로시저 옵션을 설정합니다. 저장 프로시저 및 테이블 반환 함수 드롭다운 목록에서 원하는 항목을 선택합니다.

  • 관계형 쿼리 디자이너에서는 데이터베이스 뷰 창에서 저장 프로시저 또는 테이블 반환 함수를 선택합니다.

  • 텍스트 기반 쿼리 디자이너에서는 도구 모음에서 StoredProcedure를 선택합니다.

저장 프로시저나 테이블 반환 함수를 선택한 후 쿼리를 실행할 수 있습니다. 입력 매개 변수 값을 입력하라는 메시지가 표시됩니다. 쿼리를 실행하면 입력 매개 변수에 해당하는 보고서 매개 변수가 자동으로 만들어집니다. 자세한 내용은 이 항목의 뒷부분에 나오는 쿼리 매개 변수를 참조하십시오.

저장 프로시저의 경우 첫 번째로 검색된 결과 집합만 지원됩니다. 저장 프로시저에서 여러 개의 결과 집합을 반환할 경우 첫 번째 결과 집합만 사용됩니다.

저장 프로시저에 기본값을 사용하는 매개 변수가 있는 경우 매개 변수의 값으로 DEFAULT 키워드를 사용하여 해당 값에 액세스할 수 있습니다. 쿼리 매개 변수가 보고서 매개 변수에 연결되어 있으면 사용자가 보고서 매개 변수의 입력란에 DEFAULT라는 단어를 입력하거나 선택할 수 있습니다.

저장 프로시저에 대한 자세한 내용은 msdn.microsoft.com의 SQL Server 온라인 설명서에서 "저장 프로시저(데이터베이스 엔진)"를 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동

매개 변수

쿼리 텍스트에 쿼리 변수 또는 입력 매개 변수가 있는 저장 프로시저가 포함된 경우 데이터 집합에 대한 해당 쿼리 매개 변수와 보고서에 대한 해당 보고서 매개 변수가 자동으로 생성됩니다. 쿼리 텍스트는 각 쿼리 변수에 대한 DECLARE 문을 포함하지 않아야 합니다.

예를 들어 다음 SQL 쿼리는 EmpID라는 보고서 매개 변수를 만듭니다.

SELECT FirstName, LastName FROM HumanResources.Employee E INNER JOIN
       Person.Contact C ON  E.ContactID=C.ContactID 
WHERE EmployeeID = (@EmpID)

기본적으로 각 보고서 매개 변수는 데이터 형식이 Text이며 사용 가능한 값의 드롭다운 목록을 제공하기 위해 자동으로 작성된 데이터 집합을 가집니다. 보고서 매개 변수가 만들어진 후에는 기본값을 변경해야 할 수 있습니다. 자세한 내용은 매개 변수(보고서 작성기 3.0 및 SSRS)를 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동

주의

대체 데이터 확장 프로그램

OLE DB 데이터 원본 유형을 사용하여 SQL Server 데이터베이스에서 데이터를 검색할 수도 있습니다. OLE DB를 사용하여 SQL Azure 데이터베이스에 연결할 수는 없습니다.

자세한 내용은 ODBC 연결 유형(SSRS)를 참조하십시오.

플랫폼 및 버전 정보

플랫폼 및 버전 지원에 대한 자세한 내용은 SQL Server온라인 설명서의 Reporting Services 설명서에서 Reporting Services에서 지원하는 데이터 원본(SSRS)을 참조하십시오.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동

관련 섹션

설명서의 다음 섹션에서는 보고서 데이터에 대한 깊이 있는 개념 정보를 제공하며, 데이터와 관련된 보고서 부분을 정의, 사용자 지정 및 사용하는 방법을 절차적인 측면에서 소개합니다.

맨 위로 이동 링크와 함께 사용되는 화살표 아이콘맨 위로 이동