2014-12-01 2 views
0

У меня есть 2 таблицы.SQLExpress создает связь между двумя таблицами

  1. dbo.Department
  2. dbo.Employee Записи

В записях сотрудников, у меня есть поле, 2 важных полей.

  1. Employee ID (Установить в качестве основного ключа)
  2. Департамент ID

В Департаменте, у меня только 3 поля

  1. Department ID (установить в качестве основного ключа)
  2. Наименование
  3. Местонахождение

Я хочу, чтобы идентификатор отдела заполнялся данными из dbo.Department, поэтому единственными вариантами являются выпадающий список. (ПРИМЕР отдела 100 - Маркетинг - 1-й этаж, отдел 200 - Кадровые ресурсы - 2-й этаж ETC.) Для этого я попытался создать новый внешний ключ в dbo. Отдел

Сначала я щелкнул правой кнопкой мыши по папке ключей в dbo.Отдел и выбранный «Новый внешний ключ»

Затем я нажал на 3 точки, которые я получил, когда выбрал поле «Таблицы и столбцы», как показано ниже.

SQL Picture One

Это всплывает диалоговое окно, в котором можно установить первичный ключ таблицы и таблицу ключей иностранных. Я установил таблицу первичного ключа как Employee Records и таблицу внешнего ключа как Department. В обоих полях у меня есть идентификатор отдела, как показано ниже. SQL Dialog box

Когда я ударил нормально, я получаю следующее сообщение

«Столбцы в таблице„Сотрудник Records“не совпадает первичный ключ или ограничение уникальности»

Могу ли я устанавливать это вверх неправильно? Я новичок в практике базы данных, поэтому не уверен, что я даже использую правильную технику, чтобы делать то, что я пытаюсь достичь.

ответ

3

Вы близко, но ваши столы обращены вспять. Создайте свой внешний ключ в таблице «Сотрудники», а не в таблице «Отделы». Таблица первичных ключей в этом случае - таблица отделов.

+0

Это сделало это. Спасибо. Наслаждайтесь своей щедростью. – onTheInternet

+0

Прошу прощения. Я подумал, что попал на галочку, удостоенную награды. – onTheInternet

+0

Я бы тоже подумал. – JSR

Смежные вопросы