인터베이스를 사용하여 데이터베이스 테이블을 설계하는 가장 좋은 방법?

StackOverflow https://stackoverflow.com/questions/983702

문제

나는 회사 데이터베이스를 적절한 방식으로 다시 시작하려고합니다. 현재 데이터베이스는 혼란스럽고 문서가 거의 없거나 전혀 없습니다. 인터베이스 데이터베이스를 설계 할 때 사람들이 무엇을 사용하는지 궁금합니다. SQL을 생성 할 좋은 시각적 스키마 디자이너가 있습니까? 손으로 모든 것을하는 것이 더 낫습니까?

기본적으로 데이터베이스를 설계하고 문서화 할 때 사람들이 일반적으로 취하는 단계는 무엇입니까? 그것이 중요하다면, 나는 데이터베이스의 ORM으로 최대 절전 모드를 사용하려고합니다. (인터베이스와의 특정 팁도 감사합니다).

감사해요!

도움이 되었습니까?

해결책

이것이 최근에 만들어졌고 비즈니스에 의존하지 않는 새로운 데이터베이스 앱이라면, 재 작성 / 새 데이터베이스에 대한 전체 증기를 말합니다. 그러나 나는 당신이 몇 년 동안 주변에 있었고 많이 사용되는 데이터베이스를 다루고 있다고 생각합니다.

데이터베이스가 몇 살이 된 것에 대해 옳다면, 처음부터 시작하는 것을 강력히 추천합니다. 약 몇 년 동안 있었던 거의 모든 생산 데이터베이스는 "지저분한"것입니다. 이는 일반적으로 프로그램에 대한 실제 요구 사항이 일반적으로 솔루션이 다소 지저분 해지기를 원하기 때문입니다. 이것은 몇 년 후에도 새로운 데이터베이스 (이 경로를 가야 함)에서도 마찬가지입니다.

다음은 처음부터 프로덕션 데이터베이스를 재현하지 않는 몇 가지 이유입니다.

  • 라이브 데이터베이스에는 수년 분량의 거래 및 고객 데이터가 포함되어 있습니다. 이 데이터를 완전히 다른 데이터베이스 구조로 전송하는 것은 매우 어려울 것입니다. 회사가 지금이 오래된 데이터에 액세스 할 필요가 없을 것이라고 말하더라도 저를 믿으십시오.
  • 많은 비즈니스 규칙이 아마도 데이터베이스 구조, 기본값, 트리거, 저장 절차, 심지어 열의 데이터 유형, 심지어 칼럼의 데이터 유형으로 구축되었을 것입니다. 사람들이 시스템을 사용하기 시작하고 규칙이 제대로 응용되지 않는다는 것을 발견 할 때 디버깅 및 추가하는 데 많은 시간을 보내고 많은 시간을 소비합니다.
  • 귀하는 새로운 데이터베이스 디자인에서 실수를 저지르거나 나중에 새로운 기능을 수용하기 위해 구조가 변경되어야한다는 것을 인식해야합니다. 현재 데이터베이스를 변경하고 그로부터 배우면 향후 변화가 더 쉬워지고 직관적이됩니다.

여기에 내가 추천하는 접근법은 다음과 같습니다.

  • 현재 데이터베이스를 이해하고 문서화하여 비즈니스의 정보 흐름을 잘 이해할 수 있습니다.
  • 나쁘거나 지저분한 디자인으로 보이는 것을 보면주의 깊게 살펴보십시오. 당신이 옳을 수도 있고, 변화의 잠재력을 보거나, 당신은 성과 나 다른 이유로 트레이드 오프가 만들어 졌을 수도 있고, 이것으로부터 배울 수 있습니다.
  • 문서를 업데이트하고 해당 영역에 의존하는 프로그램을 변경하여 데이터베이스 구조를 점차적으로 개선하십시오 (또는 그렇지 않은 경우 프로그래머와 협력하십시오).

나는 이것이 매우 먼 길처럼 보이지만 12 년 동안 데이터베이스를 유지하고 만들어 온 사람에게서 가져 가면 실제 요구 사항이 지저분하기 때문에 현재 데이터베이스는 지저분 할 것입니다.

다른 팁

일반적으로 텍스트 편집기를 사용합니다. 때때로 나는 사용합니다 데이터베이스 워크 벤치. 마지막으로, Embarcadero는 일부 데이터베이스 모델링 도구에 인터베이스 지원을 추가하려고했지만 아직 배송되었는지는 모르겠습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top