[mysql]многие ко многим - вопрос в сообщении
изврат.
быстрее было бы сделать таблицу связи номер тренера - номер тренинга
А то изменение стуктуры таблицы - страшно медленная операция, по идее.
быстрее было бы сделать таблицу связи номер тренера - номер тренинга
А то изменение стуктуры таблицы - страшно медленная операция, по идее.

Почитай умные книжки сначала, а потом уже базы проектируй.
Связь многие ко многим реализуется при помощи вспомогательной таблицы вида
create table TeachersToSubjects (
TeacherId int not null,
SubjectId int not null,
constraint PK_TEACHERSTOSUBJECTS primary key (TeacherId, SubjectId)
)
go
alter table TeachersToSubjects
add constraint FK_TEACHERS_REF8_TEACHERS foreign key (TeacherId)
references Teachers (Id)
on update cascade on delete cascade
go
alter table TeachersToSubjects
add constraint FK_TEACHERS_REF7_SUBJECTS foreign key (SubjectId)
references Subjects (Id)
on update cascade on delete cascade
go
Что за тупняк?
Чем плоха таблица LinkID, TrenerID, TreningID?
Чем плоха таблица LinkID, TrenerID, TreningID?
Оставить комментарий
iakobi91
Есть список тренеров и список тренингов. Каждый тренер может проводить несколько тренингов, и, соответственно каждый тренинг могут вести несколько тренеров. Как поумнее реализовать связь между тренерами и тренингами,Единственное, что придумал, "графически" реализуецца в виде двумерной таблицы тренеры х тренинги, где в ячейке [тренер, тренинг] их связь (0/1). Если делать таблицу в бдпо типу: строка соответствует тренеру, столбец тренингу, то при добавлении/удалении тренинга надо вставлять/удалять столбец в таблице. Разумно ли это?