2011-08-25 1 views
0

У меня есть две таблицы:иностранных Основная проблема

  1. DeptMast
  2. EmpMast

Обе таблицы имеют столбец с именем DeptName и у меня есть первичные ключи DeptName в обеих таблицах.

Теперь, когда я иду, чтобы создать внешний ключ на колонке DeptName из EmpMast, SQL Server дает мне эту ошибку:

There are no primary or candidate keys in the referenced table 'DEPTMAST' that match the referencing column list in the foreign key 'FK_Key'.

Если я создаю уникальный индекс deptmast.Deptname тогда я не получаю сообщение об ошибке. Почему это происходит?

+4

Вы можете подумать о возврате и принятии некоторых ответов на предыдущие вопросы. Это сделает сообщество более отзывчивым. – zellio

+0

Можете ли вы ** показать нам ** инструкцию T-SQL, которую вы используете для создания отношения внешнего ключа? –

ответ

0

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

+0

ALTER TABLE [dbo] .Empmast WITH CHECK ADD CONSTRAINT [Fk_DBName_DBColumn] FOREIGN KEY (DEPTNAME) ССЫЛКИ [dbo] .DEPTMAST (DEPTNAME) – HMD

+0

Вы сказали, что создали две таблицы, каждая из которых имеет первичный ключ 'DeptName'. Первичный ключ также не может быть внешним ключом. – CrackerJack9

+0

я так не думаю .... – HMD

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

  • Нет связанных вопросов^_^