Virendra S from Bangalore, Karnataka Ответов: 1

Как вставить данные выпадающего списка multiselect в таблицу БД.


tblDepartmentMaster:
IP
Security
Legal
IOT


сотрудник выбирает свои отделы из выпадающего списка multi select. эти сведения о подразделениях должны храниться в tblEmpMaster.
как управлять этими данными в таблице tblEmpMaster(еще не разработанной).
пожалуйста, помогите здесь в разработке таблицы tblEmpMaster.
Примечание: у меня есть несколько многозначных данных,таких как роли, Гео.

Что я уже пробовал:

эти таблицы должны быть масштабируемыми для будущих добавлений столбцов.

Gerry Schmitz

Что такое "ключ" к отделу? Никто не хранит (отдел) "детали" в мастере (сотруднике); только ключ(ы).

1 Ответов

Рейтинг:
9

CHill60

Если сотрудник может работать в нескольких отделах, не храните эти сведения в главной таблице для данного сотрудника.

Используйте таблицу "ссылка", которая соединяет их ...

напр.

create table tblDepartmentMaster
(
    deptId int identity(1,1),
    deptName nvarchar(100)
);
insert into tblDepartmentMaster (deptName) values
('IP'),
('Security'),
('Legal')
('IO');
Обратите внимание, что содержимое этой таблицы теперь
deptID   deptName
1        IP
2        Security
3        Legal
4        IO

Когда вы проектируете свой tblEmpMaster таблица убедитесь, что каждый сотрудник также имеет уникальный идентификатор, например empId (имя нет кстати хороший идентификатор)

Создайте третью таблицу, содержащую по одной строке для каждого отдела на сотрудника, содержащую идентификатор отдела и идентификатор сотрудника. Возможно, вы также захотите включить даты от и до

Например, сотрудник № 7 находится в охранном и юридическом отделах, поэтому таблица ссылок будет содержать две строки для этого сотрудника ...
empId   deptId
7       2
7       3
Если сотрудник может находиться только в одном отделе одновременно, и если вы не хотите записывать какие-либо перемещения между отделами, то просто включите столбец в таблицу tblEmpMaster для хранения deptid отдела. Это более вероятный сценарий, чтобы быть честным

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

Ключевые темы для вашего исследования :
Отношения внешних ключей между таблицами
Нормализация Базы Данных


Virendra S from Bangalore, Karnataka

Спасибо за ваши подробные ответы. ваш ответ прояснил большую часть моих сомнений.
Колонка Geo представляет бизнес-Гео-детали этого человека, которые обрабатываются так, как человек может заботиться о деловой активности в Европе, APAC, на Ближнем Востоке.