간단하고 간단합니다. ERD가없는 데이터베이스를 건물 계획없이 집을 짓는 것으로 생각하십시오. 단순히 벽돌을 다른 벽돌 위에 놓는 것만으로도 무언가를 짓기에 충분하다고 생각하기 때문에 가능할 수 있지만 재난 가능성이있는 프로젝트를 누군가가 책임지는 순간.
내 경험상 ERD를 CASE 도구 (ERWin, MySQL Workbench 등)와 함께 사용하지 않으면 ERD의 이점을 크게 얻지 못하므로 순방향 및 역방향 엔지니어링과 같은 실제로 유용한 작업을 수행 할 수 있습니다. 이러한 기능이 없어도 완전한 데이터베이스에 대한 중앙 집중식 회로도를 보유한 경우에도 유용합니다. 때로는 데이터베이스 자체에 구현 된 제약 조건이 특정 데이터베이스 엔터티 간의 관계에 대한 전체 내용을 설명하기에 충분하지 않기 때문입니다.
아시다시피 MyISAM 및 InnoDB와 같은 여러 내부 스토리지 엔진을 구현하는 MySQL 관련 예제가 있습니다. MyISAM이 제약 조건을 지원하지 않는 가장 중요한 것 중 하나는 그들 사이에 중요한 차이점이 있습니다. 이러한 사실에도 불구하고 MyISAM은 웹 응용 프로그램에 많이 사용되므로 관계 논리는 비즈니스 논리 (응용 프로그램 코드) 또는 다른 방법으로 구현되어야합니다. 문제는 MyISAM 테이블 (엔티티)을 사용하여 ERD를 포워드 엔지니어링 할 때 MySQL은 ERD에 의해 설정된 제약 조건을 자동으로 무시하고 엔터티 간 관계의 특성을 명확하게 식별하지 못하는 데이터베이스를 갖게됩니다. 다시 말해서 데이터베이스 레이아웃을 개발 한 후 코드 개발자가 ERD없이 적절한 비즈니스 로직을 구현할 수있는 방법이 없습니다.