2010-01-04 4 views
0

이것이 가능한지 알아 내려고했지만 지금까지는 좋은 해결책을 찾지 못했습니다. 내가 성취하고자하는 것은 저장된 데이터없이 데이터베이스를 복제 할 수있는 저장 프로 시저를 작성하는 것입니다. 즉, 모든 테이블, 뷰, 제약 조건, 키 및 인덱스가 포함되어야하지만 데이터는 포함되지 않아야합니다. 할 수 있습니까?SP로 전체 데이터베이스 복제

답변

0

나는 성공적으로이 목적을 위해 Microsoft SQL Server 데이터베이스 게시 마법사를 사용했습니다 :이 링크를 확인하세요. 그것은 꽤 간단하고 코딩이 필요 없습니다. 다음은 샘플 전화는 다음과 같습니다

sqlpubwiz 스크립트 -d 데이터베이스 이름 -S 서버 이름 -schemaonly C : \ Projects2 정크 \의 DatabaseName.sql \

나는 기본값 데이터와 스키마를 만드는 것입니다,하지만 당신은을 사용할 수 있다고 생각합니다 schemaonly 매개 변수

다운로드하십시오. here

5

확실한 - 저장된 proc은 시스템 카탈로그 뷰를 읽고 데이터베이스에 어떤 오브젝트가 있는지 알아 내고 잠재적 종속성을 판별 한 다음 데이터베이스를 재 작성하는 단일 또는 SQL 스크립트 콜렉션을 작성해야합니다. 실행하십시오.

아주 좋고 쉽지 않을 수도 있습니다. 먼저 눈에 보이는 것보다 특히 객체 간의 종속성이 ....

더 많은 두통이 발생할 수 있습니다 당신은 또한 수 :

  • SQL Server Management Studio를 같이 사용 무언가 (당신이 SQL 서버에 있다면 - 당신을 지정) 수동으로 스크립트를 작성, 그냥

  • 두 서버를 비교하는 Redgate SQL Compare 같은 "DIFF"도구를 사용하여 별도의 서버에 그것들을 다시 실행하고 두 번째는 최신 상태가 없었어요

0

SQL Server에서는 시스템 테이블 (sys.tables, sys.columns 등)을 롤아웃하고 한 번에 하나씩 작업을 구성 할 수 있습니다. 처음에는 매우 수동적이고 오류가 발생하기 쉬울 것입니다. 그러나 체계적으로 체계화되어야합니다.

SMO를 사용하여 .Net에 무언가를 쓰는 또 다른 방법입니다.

http://www.sqlteam.com/article/scripting-database-objects-using-smo-updated

관련 문제