2009-11-30 2 views
1

전 델파이 5로 업그레이드되기 전에 델파이 5에서 대부분 작성된 레거시 프로젝트에서 작업하고 있습니다.이 업그레이드 후에 데이터베이스 그것은 밑에있다. 그것은 여전히 ​​데이터 저장을 위해 MS-Access를 사용합니다.MS-Access와 SQL Server간에 데이터베이스 구조를 유지할 수 있습니다.

이제 SQL Server를 대체 데이터베이스로 지원하려고합니다. 여전히 단일 사용자 상황에 대해서만, 다중 사용자 지원이 미래의 기능이 될지라도. 그리고 다른 데이터베이스를 사용해야 할 때 많은 마이그레이션 문제 (아래 참조)는 없지만 두 개의 데이터베이스 구조를 동기화 된 상태로 유지하는 것은 약간의 문제입니다.

SQL Server 데이터베이스를 생성하는 SQL 스크립트를 만들면 Access 데이터베이스를 최신 상태로 유지하는 두 번째 스크립트가 필요합니다. 그들은 같은 방언을 말하지 않습니다. 적어도 우리의 목적이 아닙니다. 따라서 데이터베이스 구조를 간단한 방식으로 유지 관리해야하며 유효한 SQL Server 데이터베이스를 Access 데이터베이스로 생성 할 수 있어야합니다. XML 파일 안에 데이터베이스 구조를 저장하는 고유 한 도구를 작성할 수 있습니다.이 도구는 스마트 코드와 결합되어 ADOX는 두 데이터베이스 유형을 모두 생성합니다.

하지만 이미이 작업을 수행 할 수있는 좋은 도구가 아닌가요?


참고 : 응용 프로그램은 ADO를 사용하고 모든 쿼리는 단순한 select 문입니다. 50 개 이상의 테이블이 있지만 루트 "문서"테이블이 하나 있으며 사용자는이 테이블에서 "문서"중 하나를 선택합니다. 그런 다음이 문서 레코드와 관련된 모든 테이블의 모든 레코드를 수집하여 메모리 내 구조에 저장합니다. 사용자가 데이터를 저장하면 문서 레코드와 변경된 모든 데이터를 다시 데이터베이스에 다시 씁니다. 기본적으로이 문서 읽기/쓰기 메커니즘은 전체 응용 프로그램에서 유일한 데이터베이스 상호 작용입니다. 그래서 다른 데이터베이스를 사용하는 것은 큰 문제가 아닙니다.

향후 MS-Access 데이터베이스를 삭제 하겠지만 현재이 응용 프로그램을 사용하는 고객은 4000 명입니다. 먼저 모든 것이 SQL Server에서 작동하는지 확인해야하며 현재 코드를 계속 유지해야합니다. 결과적으로, 우리는 최소한 1 년 동안 두 데이터베이스를 모두 지원해야합니다.

답변

1

DB Explorer을 살펴보면 평가판 다운로드도 있습니다. SQL 서버 액세스에서 개발 후

  • (스키마 변경)에 MS 액세스에서

    또는

    1. 를 사용하여 마이그레이션 마법사는 마법사를 다시 사용합니다.
    2. 도구를 사용하여 SQL Server 스키마를 비교하십시오.
  • +0

    우리는 실제로 개발자가 Access 또는 SQL Server에서 변경하지 못하도록하고 싶습니다. 과거 경험에 따르면 변경 사항을 동기화하는 것을 잊어 버린 많은 오류가 발생합니다. –

    +0

    그런 경우 db Explorer가 수행합니다. 그것은 SQL 서버, 액세스 및 몇 가지를 다루고 있습니다. 스키마를 비교하고 문서화 할 수 있습니다. MS 마이그레이션 마법사를 사용하여 SQL 서버, 문서 "참조 버전"으로 변환하고 Access 및 SQL Server와 SQL Server를 비교하십시오. –

    관련 문제