본문 바로가기

SQL Server/SQL Server 형상 관리

[Sequel Safe] 설치 및 개발 환경 셋업

Sequel Safe 설치

  1. 다음 2개의 데이터베이스를 생성합니다.
    1. DBDailyBuild DB
      Gen_DBDailyBuild.sql
    2. SQLSafe DB (2009.07.03 현재 최신 버전은 build 14입니다.)
      1. Gen_SQLSafeDB.sql
      2. SQLSafe_Build14_cumulative.sql
  2. SQLSafe DB에서 다음 Query를 실행합니다.

    1
    2
    INSERT dbo.DBAs (loginName, registerDate)
    VALUES (ORIGINAL_LOGIN(), GETDATE());

    cs

  3. master DB에서 아래 script를 실행합니다.
    master.sql

    History

SQLSafe_Build1.sql

SQLSafe_Build2.sql

SQLSafe_Build3.sql

SQLSafe_Build4.sql

SQLSafe_Build5.sql

SQLSafe_Build6.sql

SQLSafe_Build7.sql

SQLSafe_Build8.sql

SQLSafe_Build9.sql

SQLSafe_Build10.sql

SQLSafe_Build11.sql

SQLSafe_Build12.sql

SQLSafe_Build13.sql

DevDB_Trigger_20090622.sql

SQLSafe_Build14.sql

DevDB_Trigger_20091023.sql


2013.09.27
- 발판 코드로 생성한 SP가 SQL Server 2012에서 에러를 정상적으로 처리하지 못하는 오류 수정
master 데이터베이스에서 master.sql을 실행해야합니다. 

2009.10.23
- 개발 DB에서 SQL Agent에 의해 실행되는 DDL문을 차단하거나 수집하지 않도록 수정
- 각 개발 DB에서 DevDB_Trigger_20091023.sql을 실행합니다.


2009.07.03 (SQLSafe_Build14)
- P_CheckConvention 버그 fix
- 4,000자 이상의 문자열 print하는 방식 변경
- master 데이터베이스에서 master.sql을 실행해야합니다.

2009.06.22 (SQLSafe_Build13)
- 오브젝트별 버전 관리 기능 추가
- Gen_DevDB01.sql 파일이 업데이트 되었습니다. 기존에 다운로드 받으신 파일이 있다면,
다시 다운로드 받으십시오.
- SQLSafe 데이터베이스를 Build12에서 업데이트하는 경우, 아래와 같은 추가 작업이 필요합니다.
master 데이터베이스에서 master.sql을 실행합니다.
각 개발 DB에서 DevDB_Trigger_20090622.sql을 실행합니다.

2009.06.07 (SQLSafe_Build12)
- 코딩 컨벤션 체크 로직 수정

2009.06.04 (SQLSafe_Build11)
- 누적 배포스크립트 생성 기능 추가

2009.04.30 (SQLSafe_Build9)
- 인덱스 생성 안되는 오류 수정

2009.04.27 (SQLSafe_Build8)
- 128자를 초과하는 단어가 있는 모듈의 생성이 실패하는 오류 수정

2009.04.21 (SQLSafe_Build7)
- Database Daily Build 수정

2009.04.15 (SQLSafe_Build6)
- Database Daily Build 기능 추가

2009.04.10 (SQLSafe_Build5)
- 모듈과 테이블 사이의 참조 관계를 관리 및 조회할 수 있도록... 모델을 수정하고 SP를 추가하였습니다.


master.sql 변경 이력

2009.08.10
- sp_mkScaffoldR2 ~ R4 수정 (datetime2, datetimeoffset 지원)

2009.08.05
- SQL Server 2008 추가된 데이터 유형 지원
date, datetime2, datetimeoffset, time, geography, geometry, hierarchyid

2009.07.22
- sp_helptable 수정 / SQL Server 2008에서 hierarchyid 타입의 컬럼 관련 버그 수정

2009.07.21
- sp_updateCode 수정 / 사용자 DB에 TF_NSplit 함수가 필요합니다.



2009.07.14
- sp_genInsertScript 추가

2009.07.03
- sp_print 추가

2009.07.02
- sp_editmodule 수정 / edit 할 모듈 소스의 상단 주석에 version : 문자열 또는 author : 문자열이 없는 경우, 소스가 출력되지 않는 현상 fix

2009.06.22
- 모듈 버전 관리 추가로 인한 SP 수정 (SQLSafe_Build13 적용 필수!!!)

2009.06.18
- sp_mkScaffoldR1 ~ R4이 생성하는 SP의 상단 주석 수정 (result set 블럭 추가)

2009.06.07
- [SQLDeveloper] Role이 sp_rename을 호출하지 못하도록 수정

2009.05.26
- sp_mkScaffoldR2 수정

2009.04.10
- sp_mkScaffold 호출 시 테이블 명을 입력하지 않는 경우, 기본 템플릿이 출력되도록 수정

2009.04.09
- SQLSafe DB 컨텍스트에서 sp_modulelist 호출 시, 아무 내용도 출력되지 않는 현상 수정.


신규 개발망 데이터베이스 추가하기

  1. Gen_DevDB01.sql 파일을 SSMS로 엽니다.
    1. Gen_DevDB01.sql
    2. 단축키 Ctrl-Shift-M을 누르고, 추가할 데이터베이스 이름을 타이핑합니다.
      (또는 SSMS 메뉴바에서 Query - Specify Values for Template Parameters... 클릭)
    3. 스크립트를 실행합니다.

  2. 새로 생성된 개발망 데이터베이스에서 아래 스크립트를 실행합니다.
    1. Gen_DevDB02.sql


기존 개발망 데이터베이스 추가하기

  1. Northwind 데이터베이스를 예로 설명합니다.
    1. Northwind 데이터베이스를 Full Backup합니다.
    2. SSMS > Object Explorer > Northwind에서 마우스 오른쪽 클릭 > Tasks > Generate Scripts...


  2. Table/View Options 항목에서 "Script Indexes", "Script Triggers"를 "True"로 변경합니다.


  3. 모든 개체를 선택하고 마법사를 마칩니다.
    1. 마법사를 통해 생성한 스크립트를 첨부합니다.
      1. Gen_NorthwindDB.sql
  4. Sequel Safe가 설치된 인스턴스에서 Northwind 데이터베이스를 DROP합니다.
  5. Gen_DevDB01.sql 파일을 SSMS로 엽니다.
    1. Gen_DevDB01.sql
  6. 단축키 Ctrl-Shift-M을 누르고, Northwind 라고 타이핑합니다.
    (또는 SSMS 메뉴바에서 Query - Specify Values for Template Parameters... 클릭)


  7. 스크립트를 실행합니다.
  8. SQLSafe 데이터베이스에서 아래 스크립트를 실행합니다.
    1. P_CheckConvention_Disable.sql
  9. 4번 과정에서 생성해 놓은 Northwind 스크립트를 실행합니다.
  10. 1번 과정에서 Full Backup했던 파일을 이용해 Northwind 데이터베이스를 Restore합니다.
    (Restore options에서 "Overwrite the existing database"에 체크합니다.)
  11. Northwind 데이터베이스의 Compatibility level의 "SQL Server 2005 (90)" 또는 "SQL Server 2008 (100)"으로 변경합니다.


  12. Northwind 데이터베이스에서 아래 스크립트를 실행합니다.
    1. Gen_DevDB01-1.sql
    2. Gen_DevDB02.sql

  13. SQLSafe 데이터베이스에서 아래 스크립트를 실행합니다.
    1. P_CheckConvention_Recover.sql