MySQL 데이터베이스에 다양한 사용자 세부 정보를 저장합니다. 원래는 데이터가 UserId와 연결되어 있고 때로는 복잡한 호출을 통해 필요에 따라 데이터를 표시하고 조작하는 것을 의미하는 다양한 테이블에 설정되었습니다. 새로운 시스템을 설정하면 이러한 모든 테이블을 하나의 큰 관련 콘텐츠 테이블로 결합하는 것이 거의 합리적입니다.
다음은 내 테이블 구조의 일부 예입니다.
수정 : 지금까지 모든 답변에 찬성 투표를했으며 모두 본질적으로 내 질문에 답변하는 요소가 있습니다.
대부분의 테이블은 비정규 화의 주된 이유 인 1 : 1 관계를 가지고 있습니다.
이 셀의 많은 부분이 비어있을 가능성이있는 경우 테이블이 100 개 이상의 열에 걸쳐 있으면 문제가 있습니까?
해결 방법
여러 테이블은 다음과 같은 방법 / 사례에 도움이됩니다.
(a) 다른 사람들이 다른 테이블을 포함하는 응용 프로그램을 개발하려는 경우 테이블을 분할하는 것이 좋습니다.
(b) 데이터 수집의 다른 부분에 대해 다른 사람에게 다른 종류의 권한을 부여하려는 경우 분할하는 것이 더 편리 할 수 있습니다. (물론 뷰를 정의하고 적절한 권한을 부여하는 방법을 살펴볼 수 있습니다.)
(c) 특히 개발 중에 데이터를 다른 위치로 이동하려면 테이블을 사용하여 파일 크기를 줄이는 것이 좋습니다.
(d) 작은 공간은 단일 엔티티의 특정 데이터 수집에 대한 응용 프로그램을 개발하는 동안 편안함을 제공 할 수 있습니다.
(e) 가능성입니다. 단일 값 데이터로 생각한 것이 미래에 실제로 여러 값이 될 수 있습니다. 예 : 신용 한도는 현재 단일 값 필드입니다. 그러나 내일 값을 (시작일, 종료일, 신용 값)으로 변경하기로 결정할 수 있습니다. 이제 분할 테이블이 유용 할 수 있습니다.
내 투표는 데이터가 적절하게 분할 된 여러 테이블에 대한 것입니다.
행운을 빕니다.
참조 페이지 https://stackoverflow.com/questions/1125004
'MySql' 카테고리의 다른 글
MySQL JavaScript를 사용하여 MySQL 쿼리를 실행하는 방법 (0) | 2021.02.07 |
---|---|
MySQL how to understand "can't connect" mysql error messages? (0) | 2021.02.07 |
MySQL은 X 분보다 오래된 레코드를 삭제합니까? (0) | 2021.02.07 |
MySQL JSON을 mySQL로 구문 분석 (0) | 2021.02.07 |
MySQL 아랍어로 PHP MYSQL 데이터 삽입 (0) | 2021.02.06 |
댓글