저는 현재 강사와 학생의 세부 사항을 저장하는 프로젝트를 진행하고 있습니다. 하나의 테이블 User
또는 두 테이블 Lecturer
및 Student
을 사용해야하는지 잘 모르겠습니다.강사 및 학생을 위해 MySql에서 1 ~ 2 개의 테이블을 만들어야합니까?
강사로 로그인하면 프로젝트에 대한 그룹 관리 페이지로 학생에게 부여되지 않는 그룹 페이지에 특별한 권한이 있습니다. User
tbl에 열이있을 것입니다 status
어디 등록에 학생이나 강사가 될 수있는 페이지와 강사 코드를 입력하십시오. PHP로 mySql을 사용하고 있습니다.
요약하면 학생과 강사 모두에게 1 User
테이블을 사용해야하나요 아니면 Student
과 Lecturer
테이블을 별도로 사용해야합니까?
추가 정보 : 1 개 코스에는 많은 강사와 학생이있을 수 있지만 1 명의 학생에게는 1 개 코스가 있으며 강사는 많은 코스가 있습니다.
이것은 데이터를 기반으로합니다. 모든 사용자가 동일한 마스터 데이터를 가지고 있고 그 유형 만 변경하는 경우 플래그 필드가있는 1 개의 테이블을 사용하십시오. – vaso123
예, 데이터에 매우 의존적입니다. 강사가 다른 강사 반에서 학생이 될 수 있습니까? 그렇다면 일반적으로 나쁜 생각 인 두 개의 다른 테이블로 이동하면 한 사람이 두 엔티티로 저장됩니다. 나는 단 하나의 테이블에 기대고 있지만 모델의 세부 사항과 현실에 달려 있습니다. @ ctrahey가 "역할"이라는 아이디어를 단일 사용자 테이블에 추가하는 제안은 문제에 대한 매우 전통적이며 잘 검증 된 솔루션입니다. –
Student 테이블에있는 정보 중 일부는 학생이 CourseID를 외국으로 가지고 있기 때문에 학생과 강사를 별도의 테이블에 둘 필요가 있다고 가정합니다. 학생은 강사가 많고 강사는 많은 학생이 있으며 데이터베이스의 링커 테이블을 사용하여이 둘을 연결합니다. 나는 둘 다 하나의 User 테이블에 둘 수 있다고 가정했다. – drapu