2009-10-23 5 views
-2

согласно нашей последней дискуссии относительно дублирующего счета-фактуры №. и у вас есть код, например:ошибка внешнего ключа и первичного ключа

create table Invoice 
(
    companyID int, 
    invno varchar(50), 
    primary key (companyID,Invno) 
) 

работал нормально.

но другая таблица invcarat же имеет поля, как:

companyID(int)   invno(varchar) 
------------------------------------------------------ 

Теперь я должен создать внешний ключ invcarat (invno), но ошибка произошел при создании внешнего ключа, что «первичный ключ ссылки табличный счет не существует ». в то время как я создал первичный ключ в счете-фактуре, как указано выше.

любезно ответ, как создать отношения bewteen две таблицы.

благодарит заранее.

ответ

2

Внешний ключ должен быть на invcarat (companyID, invno) и должен содержать ссылку invoice (companyID, invno). Столбец invno не является первичным ключом, поэтому вы не можете использовать его как цель внешнего ключа. Вы можете создать на нем уникальный ключ, но вы можете просто изменить первичный ключ.

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