배열 매개 변수 예제

업데이트: 2006년 4월 14일

데이터베이스에서 행 집합을 생성, 업데이트 또는 삭제해야 하는 경우가 있습니다. 이러한 작업을 수행하는 방법은 여러 가지가 있습니다. 그 중 한 가지는 CLR(공용 언어 런타임) 통합 사용자 정의 데이터 형식을 사용하여 클라이언트에서 서버의 CLR 통합 저장 프로시저로 정보 배열을 전달하는 것입니다. 서버에 제공되는 데이터의 크기는 이러한 사용자 정의 데이터 형식의 특성으로 인해 8000바이트로 제한됩니다. 따라서 이 방법은 크거나 복잡한 데이터의 경우에는 적합하지 않습니다. 자세한 내용은 AdventureWorks 주기 CLR 레이어 예제의 연락처 만들기 저장 프로시저를 참조하십시오. 조작 중인 데이터가 작고 단순한 경우에는 각 행에 대해 저장 프로시저를 호출하는 것보다 이 방법이 훨씬 더 효율적일 수 있습니다. 배열을 전달함으로써 순서가 중요한 응용 프로그램에 대해 데이터의 순서가 유지됩니다.

이 예제에는 다음이 포함되어 있습니다.

  1. ContactTypeNames 사용자 정의 데이터 형식. 필요한 연락처 유형 이름 목록이 포함되어 있습니다.
  2. Microsoft Visual C# 또는 Microsoft Visual Basic 메서드로 구현된 usp_EnsureContactTypeNames 저장 프로시저. 이 저장 프로시저는 ContactTypeNames 사용자 정의 데이터 형식의 인스턴스를 받아들여 이 사용자 정의 데이터 형식 인스턴스에 포함된 연락처 이름 중 테이블에는 없는 모든 연락처 이름에 대해 새 행을 Person.ContactType 테이블에 삽입합니다.
  3. TestArrayParameter 콘솔 응용 프로그램. 이 프로그램은 전달된 명령줄 매개 변수를 기반으로 ContactTypeNames 사용자 정의 데이터 형식 인스턴스를 만든 다음 이 사용자 정의 데이터 형식 인스턴스를 매개 변수로 전달하여 usp_EnsureContactTypeNames 저장 프로시저를 호출합니다.

설치 디렉터리: drive:\Program Files\Microsoft SQL Server\90\Samples\Engine\Programmability\CLR\ArrayParameter\

시나리오

Adventure Works Cycles의 개발자인 Jane은 테이블에 몇 개의 간단한 행을 삽입하는 한 편 데이터베이스 처리 시간은 최소화하려고 합니다.

언어

Transact-SQL, Visual C# 및 Visual Basic

기능

배열 매개 변수 예제는 다음과 같은 Microsoft 기능을 사용합니다.

응용 프로그램 영역 기능

전체

CLR, 사용자 정의 데이터 형식, Transact-SQL

필수 구성 요소

이 예제를 실행하기 전에 다음 소프트웨어가 설치되어 있는지 확인하십시오.

  • Microsoft SQL Server 2005 또는 Microsoft SQL Server 2005 Express Edition(SQL Server Express). SQL Server 2005 Express Edition 설명서 및 예제 웹 사이트에서 무료로 SQL Server Express를 구할 수 있습니다.
  • AdventureWorks 데이터베이스. SQL Server 2005에 포함되어 있으며 SQL Server Developer 웹 사이트에서도 사용할 수 있습니다.
  • SQL Server 2005 데이터베이스 엔진 예제. 이 예제는 SQL Server 2005에 포함되어 있습니다. SQL Server Developer 웹 사이트에서 최신 버전의 예제를 다운로드할 수 있습니다.
  • .NET Framework SDK 2.0 또는 Microsoft Visual Studio 2005. .NET Framework SDK는 무료로 구할 수 있습니다. .NET Framework SDK 설치를 참조하십시오.

예제 빌드

강력한 이름 키 파일을 생성하지 않았다면 다음 지침에 따라 해당 키 파일을 생성합니다.

강력한 이름 키 파일을 생성하려면

  1. Microsoft Visual Studio 2005 명령 프롬프트를 엽니다. 시작을 클릭하고 모든 프로그램, Microsoft .NET Framework SDK 2.0을 차례로 가리킨 다음 SDK 명령 프롬프트를 클릭합니다.

    -- 또는--

    Microsoft .NET Framework 명령 프롬프트를 엽니다. 시작을 클릭하고 모든 프로그램, Microsoft .NET Framework SDK 2.0을 차례로 가리킨 다음 SDK 명령 프롬프트를 클릭합니다.

  2. 디렉터리 변경 명령(CD)을 사용하여 명령 프롬프트 창의 현재 디렉터리를 예제가 설치된 폴더로 변경합니다.

    [!참고] 예제가 있는 폴더를 확인하려면 시작 단추를 클릭하고 모든 프로그램, Microsoft SQL Server, 설명서 및 자습서를 차례로 가리킨 다음 예제 디렉터리를 클릭하십시오. 기본 설치 위치가 사용된 경우 예제는 <system_drive>:\Program Files\Microsoft SQL Server\100\Samples에 있습니다.

  3. 명령 프롬프트에서 다음 명령을 실행하여 키 파일을 생성합니다.

    sn -k SampleKey.snk

    ms160951.note(ko-kr,SQL.90).gif중요:
    강력한 이름 키 쌍에 대한 자세한 내용은 MSDN의 .NET Development Center에서 "Security Briefs: Strong Names and Security in the .NET Framework"를 참조하십시오.

배열 매개 변수 예제를 빌드하려면

  1. Visual Studio 2005와 제공된 Visual Studio 솔루션을 사용하거나 .NET Framework SDK 2.0에 포함되어 있는 MicrosoftMSBuild를 사용하여 예제를 컴파일합니다. .NET Framework 명령 프롬프트에서 다음과 비슷한 명령을 실행합니다.

    msbuild /nologo /verbosity:quiet /property:Configuration=Debug CS\ArrayParameter.sln

  2. AdventureWorks 데이터베이스가 설치되어 있는지 확인합니다.

  3. SQL Server 데이터베이스 엔진 예제를 기본 위치에 설치하지 않은 경우 예제가 설치된 위치를 나타내도록 Scripts\InstallCS.sql에서 스크립트의 CREATE ASSEMBLY 부분에 포함된 경로를 수정합니다.

  4. 사용 중인 SQL Server 인스턴스의 관리자가 아닌 경우 설치를 완료하기 위해 관리자로부터 CreateAssembly 사용 권한을 부여 받아야 합니다.

  5. SQL Server Management Studio에서 Visual C# 프로젝트를 컴파일했는지 또는 Visual Basic 프로젝트를 컴파일했는지에 따라 scripts\installCS.sql 또는 scripts\installVB.sql 파일을 엽니다. 파일에 포함된 스크립트를 실행하거나 명령 프롬프트 창에서 다음과 비슷한 명령을 실행합니다.

    sqlcmd -E -I -i Scripts\InstallCS.sql

예제 실행

배열 매개 변수 예제를 실행하려면

  1. 명령 프롬프트에서 CD(디렉터리 변경) 명령을 사용하여 명령 프롬프트 창의 현재 폴더를 ArrayParameter 예제 디렉터리로 변경합니다. 명령 프롬프트에서 다음 명령을 실행합니다.

    Scripts\TestCS.cmd

예제 제거

배열 매개 변수 예제를 제거하려면

  1. Management Studio에서 scripts\cleanup.sql 파일을 엽니다. 파일에 포함된 스크립트를 실행하거나 명령 프롬프트 창에서 다음 명령을 실행합니다.

    sqlcmd -E -I -i Scripts\cleanup.sql

설명

이 예제가 제대로 동작하려면 SQL Server 2005 또는 SQL Server Express에 대한 공용 언어 런타임을 설정해야 합니다.

예제는 교육용으로만 제공되므로 프로덕션 환경에서 사용하기에 적합하지 않으며 프로덕션 환경에서 테스트되지 않았습니다. Microsoft에서는 이러한 예제에 대해 기술 지원을 제공하지 않습니다. 시스템 관리자의 허가 없이 프로덕션 SQL Server 데이터베이스 또는 보고서 서버에 예제 응용 프로그램 및 어셈블리를 연결하거나 사용해서는 안 됩니다.

참고 항목

작업

AdventureWorks 주기 CLR 레이어

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2005년 12월 5일

변경된 내용
  • 키 파일의 이름 및 위치를 포함하여 키 파일 생성 방법에 대한 정보를 변경했습니다.