Внутреннее объединение поможет, так как когда вы запрашиваете персонал, вам нужны только контакты с персоналом, а когда пользователи - только пользовательские контакты

жен выбрать дизайн моей базы данных для моего приложения. Пока у меня есть таблица Users, которая хранит эти поля:

**USERS**
RecID - auto increment
UserID - unique id (Primary key)
UserName
Password
Salt
TempPassword
FirstName
LastName
Email
SystemAdmin
QuestionID
Answer
Active
CreateDate
CreateUID

В этой таблице хранится вся информация о пользователях. В приложении есть еще один раздел под названием «Персонал». Согласно спецификации они хотят видеть на форме

**STAFF**
First name 
Last name 
Middle Initial 
Position
Email 
Comments

Как вы можете видеть, сотрудники имеют некоторые поля, которые уже существуют в таблице пользователей, такие как имя, фамилия и адрес электронной почты. Самое главное, что запись персонала не обязательно должна быть пользователем. Другими словами, записи о сотрудниках никогда не будут входить в систему, и им не нужны все данные / поля пользователей, но пользователи могут быть сотрудниками. По этой причине я не уверен, куда идти. Должен ли я создать еще одну таблицу для персонала? Это вызовет некоторые избыточные данные, поскольку запись от персонала может уже быть записью в таблице Users. В то же время я хотел бы вести записи персонала, которые не будут иметь логин в таблице пользователей. Наличие двух отдельных таблиц сохранит базу данных чистой, но избыточной. Каков наилучший подход к этой ситуации? Также я думаю об эффективности и запросе данных в будущем. Если кто-то может дать совет или пример, который поможет. Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос