sql связи



Sql связи между таблицами

Автор Ўрий Матвеенко задал вопрос в разделе MySQL

SQL 2005, создание связи между таблицами. Помогите понять и получил лучший ответ

Ответ от Полосатый жираф Алик[гуру]
Конечно, "Сотрудники" - главная. У неё есть ссылка на офис. И у неё же признак, является ли сотрудник начальником офиса. Или ещё одна ссылка на таблицу "Должности". И всё.
Полосатый жираф Алик
(223032)
Да просто удали
Alter Table tbl_Office
Add Constraint Rukovodit
Foreign key (RN_chief)
References tbl_Sotrudnik
On delete no action
Не нужен там никакой внешний ключ! Офис - и есть офис. Ни от чего не зависит. Разве что понадобится вводить ссылку на помещение для этого офиса (при наличии таблицы "Помещения").

Ответ от Јанин Александр[эксперт]
Обе таблицы "подчиненные", раз нужна связь многие к многим делаешь отдельную таблицу с парами ссылок на обе эти таблицы. Могу только догадываться что N_sotr это ключ из tbl_Sotrudnik, т. е. это первая ссылка, вторая соответственно на ключ из tbl_Office.
Если у тебя MSSQL2005, то не парься созданием связей кодом. Делай из соответствующих окошек консоли SQL Server Management Studio (лучше сразу строить диаграмму). Вообще обычно не надо писать DDL (Data Definition Language) и DCL (Data Control Language) инструкции (в окошках обычно есть кнопка сгенерировать скрипты). А вот инструкции DML (Data Manipulation Language) освоить придется, возможно еще TCL (Transaction Control)
Пример похожей на твою связи Subjects <= Subjects_Classes => Classes

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: SQL 2005, создание связи между таблицами. Помогите понять
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*