2009-10-25 6 views
6

Visual Studio Database 프로젝트를 시작하고 함께 만들 수있는 데이터 생성 계획을 좋아합니다. 그러나, 내 프로젝트 중 하나에서 특정 값이있는 조회 테이블을 채울 필요가 있습니다. 조회 테이블과 다른 테이블간에 외래 키 관계가 존재하므로 계획에서 다른 테이블을 제거하지 않고 데이터 생성 계획에서 조회 테이블을 제거 할 수 없습니다. 하지만 다른 테이블에 대한 데이터를 생성 할 수는 없습니다.올바른 조회 테이블 값을 포함하는 데이터 생성 계획 만들기

룩업 테이블에 데이터를 추가 할 때 생성기에서 사용하려는 정확한 데이터를 지정하거나 b) 생성기에서 테이블에 새 값을 추가하지 않고 대신 이미 존재하는 값을 사용할 수 있습니까?

감사합니다.

답변

4

다음은 Visual Studio에서 일관된 데이터 생성에 필자의 2008

비주얼 스튜디오 2008 데이터 Edition의 데이터 생성 도구는 단위 테스트에서 사용하는 의미 정보 데이터베이스를 채우기위한 훌륭한 도구이지만, 그것을 통합 테스팅을 수행해야 할 때가 있습니다. 데이터 생성 계획에서 주요 테이블 (예 : C# 또는 VB.Net 솔루션의 열거 형으로 종종 미러링되는 외래 키에 사용되는 조회 테이블)에서 일관된 데이터 세트를 다시 작성해야하는 경우가 종종 있습니다. 다행히 데이터 생성 도구에는 순차적 데이터 바인딩 생성기가 포함되어 있습니다. 이 생성기는 지정된 데이터 소스에서 레코드를 선택하고 결과를 사용하여 테이블을 채 웁니다.

그럼 어떻게 사용합니까? 우리의 데이터베이스 솔루션에는 우리가 작업하고있는 실제 데이터베이스와 데이터 생성 데이터베이스라는 두 개의 데이터베이스가 포함되어 있습니다. 일관되게 채워야하는 테이블의 경우 데이터 생성 데이터베이스 (인덱스/키/제약 조건/트리거 제외)에서 스키마 & 테이블을 복제 한 다음 해당 데이터베이스에 대한 배포 후 스크립트를 사용하여 원하는 레코드를 만듭니다 . 채우기 스크립트의 중복을 줄이기 위해 실제 데이터베이스의 배포 후 스크립트는 datagenration 채우기 스크립트를 상대 경로로 가리 킵니다. 또한 데이터베이스를 방금 배포했는지 또는 데이터 생성 계획을 실행했는지에 관계없이이 테이블이 동일한 레코드를 갖게 됨으로써 팀 구성원 모두의 삶이 편하게됩니다.

Full details here

1

이 방법은 오래 -하지만 바로 조회 테이블에서 0으로 열 수를 설정하고, 기존 데이터를 삭제하지 마십시오.

+2

Visual Studio 2010에서는 작동하지 않는 것 같습니다. 'MyForeignKeyId'열에서 DBNull.Value .. '이 허용되지 않습니다.'예외가 발생하여 데이터 생성이 실패했습니다. '가 1 번 발생했습니다. –

+0

여전히 외래 키 무결성을 유지해야합니다. OP의 질문의 경우 - 조회 테이블에 삭제할 데이터가 이미 있습니다. –

+0

예. 데이터 생성 계획을 실행할 때 기존 데이터를 지우지 말고 삽입 할 행 수를 0으로 설정하여 도메인 테이블을 그대로 유지하십시오. –

관련 문제