다음을 통해 공유


SQL Server Management Studio의 스크립트 개체

이 자습서에서는 SSMS(SQL Server Management Studio) 내에 있는 다양한 개체에 대한 T-SQL(Transact-SQL) 스크립트를 생성하는 방법을 설명합니다. 이 자습서에서는 다음 개체를 스크립깅하는 방법에 대한 예제를 찾습니다.

  • GUI 내에서 작업을 수행할 때 쿼리
  • 두 가지 방법으로 데이터베이스 처리 (스크립트로 저장 및 스크립트 생성)
  • 테이블
  • 저장된 프로시저
  • 확장 이벤트

개체 탐색기에서 개체를 스크립트하려면 개체를 마우스 오른쪽 단추로 클릭하고 [개체로 스크립트] 옵션을 선택합니다. 이 자습서에서는 프로세스를 보여줍니다.

필수 조건

이 자습서를 완료하려면 SQL Server Management Studio, SQL Server를 실행하는 서버에 대한 액세스 및 AdventureWorks 데이터베이스가 필요합니다.

SSMS에서 데이터베이스를 복원하기 위한 지침은 여기: 데이터베이스 복원에 있습니다.

GUI에서 쿼리된 스크립트

SSMS에서 GUI를 사용하여 완료할 때마다 태스크에 연결된 T-SQL 코드를 생성할 수 있습니다. 다음 예제에서는 데이터베이스를 백업할 때와 트랜잭션 로그를 축소할 때 이 작업을 수행하는 방법을 보여 줍니다. GUI를 통해 완료된 모든 작업에 동일한 단계를 적용할 수 있습니다.

데이터베이스를 백업할 때 T-SQL 스크립트

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 데이터베이스 노드를 확장합니다.

  3. 데이터베이스 AdventureWorks2022를 마우스 오른쪽 버튼으로 클릭한 후 >에서 >을 선택합니다.

    데이터베이스 백업

  4. 원하는 방식으로 백업을 구성합니다. 이 자습서에서는 모든 항목이 기본적으로 남아 있습니다. 그러나 창에서 변경된 내용도 스크립트에 반영됩니다.

  5. 새 쿼리 창에 대한 스크립트 스크립트> 작업을 선택합니다.

    데이터베이스 백업 스크립트-스크립트 작업

  6. 쿼리 창에 채워진 T-SQL을 검토합니다.

    데이터베이스 백업 스크립트 --T-SQL 검토

  7. 실행을 선택하여 쿼리를 실행하여 T-SQL을 통해 데이터베이스를 백업합니다.

트랜잭션 로그를 축소할 때 T-SQL 스크립트

  1. AdventureWorks2022 데이터베이스를 마우스 오른쪽 단추로 클릭하고, > 메뉴에서 , >을 선택합니다.

    파일 축소

  2. 파일 형식 드롭다운 목록 상자에서 로그를 선택합니다.

    트랜잭션 로그 축소

  3. 스크립트스크립트 작업을 클립보드로 복사를 선택합니다.

    클립보드에 대한 스크립트

  4. 새 쿼리 창을 열고 붙여넣습니다. (창에서 마우스 오른쪽 단추로 클릭합니다. 그런 다음 붙여넣기를 선택합니다.)

    스크립트 붙여넣기

  5. 실행을 선택하여 쿼리를 실행하고 트랜잭션 로그를 축소합니다.

스크립트 데이터베이스

다음 섹션에서는 다음으로 스크립트스크립트 생성 옵션을 사용하여 데이터베이스를 스크립트로 내보내는 방법을 설명합니다. 스크립트 As 옵션은 데이터베이스 및 해당 구성 옵션을 다시 만듭니다. 스크립트 생성 옵션을 사용하여 스키마와 데이터를 모두 스크립션할 수 있습니다. 이 섹션에서는 두 개의 새 데이터베이스를 만듭니다. 스크립트 As 옵션을 사용하여 AdventureWorks2022a를 만듭니다. 스크립트 생성 옵션을 사용하여 AdventureWorks2022b를 만듭니다.

스크립트 옵션을 사용하여 데이터베이스 스크립션

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 데이터베이스 노드를 확장합니다.

  3. 데이터베이스 AdventureWorks2022>를 마우스 오른쪽 단추로 클릭합니다>다음으로 스크립트 데이터베이스>새 쿼리 편집기 창에 생성합니다.

    스크립트 데이터베이스

  4. 창에서 데이터베이스 만들기 쿼리를 검토합니다.

    스크립트된 데이터베이스 이 옵션은 데이터베이스 구성 옵션만 스크립트합니다.

  5. 키보드에서 Ctrl+F를 선택하여 찾기 대화 상자를 엽니다. 아래쪽 화살표를 선택하여 바꾸기 옵션을 엽니다. 맨 위 찾기 줄에 AdventureWorks2022를 입력하고 아래쪽 바꾸기 줄에 AdventureWorks2022a를 입력합니다.

  6. 모두 바꾸기를 선택하여 AdventureWorks2022의 모든 인스턴스를 AdventureWorks2022a로 대체합니다.

    찾기 및 바꾸기

  7. 실행을 선택하여 쿼리를 실행하고 새 AdventureWorks2022a 데이터베이스를 만듭니다.

스크립트 생성 옵션을 사용하여 데이터베이스 스크립션

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 데이터베이스 노드를 확장합니다.

  3. AdventureWorks2022>작업>스크립트 생성을 마우스 오른쪽 단추로 클릭합니다.

    데이터베이스에 대한 스크립트 생성

  4. 소개 페이지를 엽니다. [다음]을 선택하여 [개체 선택] 페이지를 엽니다. 데이터베이스에서 전체 데이터베이스 또는 특정 개체를 선택할 수 있습니다. 전체 데이터베이스 및 모든 데이터베이스 개체 스크립팅을 선택합니다.

    개체에 대한 스크립트 생성

  5. 다음 선택하여 스크립팅 옵션 설정 페이지를 엽니다. 여기서 스크립트 및 몇 가지 추가 고급 옵션을 저장할 위치를 구성할 수 있습니다.

    a. 새 쿼리 창에 저장을 선택합니다.

    b. 고급을 선택하고 다음 옵션이 설정되어 있는지 확인합니다.

    • 스크립트 통계 로 설정된 스크립트 통계.
    • 스크립트에 대한 데이터 형식은스키마로만 설정됩니다.
    • 스크립트 인덱스를True로 설정합니다.

    스크립트 개체

    비고

    스크립트할 데이터의 유형 옵션에서 스키마 및 데이터를 선택할 때 데이터베이스에 대한 데이터를 스크립트할 수 있습니다. 그러나 대용량 데이터베이스에는 적합하지 않습니다. SSMS가 할당할 수 있는 것보다 더 많은 메모리가 걸릴 수 있습니다. 이 제한은 작은 데이터베이스에 적합합니다. 더 큰 데이터베이스에 대한 데이터를 이동하려면 가져오기 및 내보내기 마법사를 사용합니다.

  6. 확인을 선택하고 다음을 선택합니다.

  7. 요약에서 다음을 선택합니다. 그런 다음 , [다음 ]을 다시 선택하여 새 쿼리 창에서 스크립트를 생성합니다.

  8. 키보드에서 찾기 대화 상자(Ctrl+F)를 엽니다. 아래쪽 화살표를 선택하여 바꾸기 옵션을 엽니다. 맨 위 찾기 줄에서 AdventureWorks2022를 입력합니다. 아래쪽 바꾸기 줄에서 AdventureWorks2022b를 입력합니다.

  9. 모두 바꾸기를 선택하여 AdventureWorks2022의 모든 인스턴스를 AdventureWorks2022b로 대체합니다.

    AdventureWorks 2016

  10. 실행을 선택하여 쿼리를 실행하고 새 AdventureWorks2022b 데이터베이스를 만듭니다.

스크립트 테이블

이 섹션에서는 데이터베이스에서 테이블을 스크립아웃하는 방법을 설명합니다. 테이블을 생성하거나 삭제 후 생성하려면 이 옵션을 사용하세요. 이 옵션을 사용하여 테이블 수정과 관련된 T-SQL을 스크립팅할 수도 있습니다. 예를 들어 그 안에 삽입하거나 그것으로 업데이트합니다. 이 섹션에서는 테이블을 삭제한 다음 다시 만듭니다.

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 데이터베이스 노드 를 확장합니다 .

  3. AdventureWorks2022 데이터베이스 노드를 확장합니다.

  4. 테이블 노드를 확장합니다.

  5. 마우스 오른쪽 버튼을 클릭하고 dbo.ErrorLog>스크립트 테이블로 사용>DROP 및 CREATE>새 쿼리 편집기 창으로:

    스크립트 테이블

  6. 실행을 선택하여 쿼리를 실행합니다. 이 작업은 Errorlog 테이블을 삭제하고 다시 만듭니다.

    비고

    Errorlog 테이블은 데이터베이스에서 기본적으로 비어 있습니다AdventureWorks2022. 따라서 테이블을 삭제하여 데이터를 잃지 않습니다. 그러나 데이터가 있는 테이블에서 이러한 단계를 수행하면 데이터가 손실됩니다.

스크립트 저장 프로시저

이 섹션에서는 저장 프로시저를 삭제하고 만드는 방법을 알아봅니다.

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 데이터베이스 노드 를 확장합니다 .

  3. 프로그래밍 기능 노드를 확장합니다.

  4. 저장 프로시저 노드를 확장합니다.

  5. 저장 프로시저 dbo.uspGetBillOfMaterials>를 마우스 오른쪽 단추로 클릭하여 스토어드 프로시저 스크립트>DROP 및 CREATE로>새 쿼리 편집기 창에 만듭니다.

    스크립트 저장 프로시저

확장 이벤트 스크립트

이 섹션에서는 확장 이벤트를 스크립아웃하는 방법을 설명합니다.

  1. SQL Server를 실행하는 서버에 연결합니다.

  2. 관리 노드를 확장합니다.

  3. 확장 이벤트 노드를 확장합니다.

  4. 세션 노드 를 확장합니다 .

  5. 새>으로스크립트> 세션에 관심이 있는 확장 세션을 마우스 오른쪽 단추> 클릭합니다.

    확장된 새 쿼리 편집기 창 세션

  6. 새 쿼리 편집기 창에서 세션의 새 이름을 system_health system_health2 수정합니다. 실행을 선택하여 쿼리를 실행합니다.

  7. 개체 탐색기에서 세션을 마우스 오른쪽 단추로 클릭합니다. 새로 고침을 선택하여 새 확장 이벤트 세션을 확인합니다. 세션 옆의 녹색 아이콘은 세션이 실행 중임을 나타냅니다. 빨간색 아이콘은 세션이 중지되었음을 나타냅니다.

    새 확장 이벤트 세션

    비고

    세션을 마우스 오른쪽 단추로 클릭하고 시작을 선택하여 세션을 시작할 수 있습니다. 그러나 이미 실행 중인 system_health 세션의 복사본이므로 이 단계를 건너뛸 수 있습니다. 확장 이벤트 세션의 복사본을 삭제할 수 있습니다. 해당 세션을 마우스 오른쪽 단추로 클릭하고 삭제를 선택합니다.

다음 단계

SSMS에 익숙해지는 가장 좋은 방법은 실습을 통해서입니다. 이러한 자습서사용법 문서는 SSMS 내에서 사용할 수 있는 다양한 기능을 이해하는 데 도움이 됩니다. 이 문서에서는 SSMS의 구성 요소를 관리하는 방법과 정기적으로 사용하는 기능을 찾는 방법을 설명합니다.