2016-05-28 2 views
0

я следующий код:SQL Server Ограничение внешнего ключа Ссылки Invalid Таблица

CREATE TABLE _CLIENT 
(
    client_id int , 
    client_name varchar(50), 
    type varchar(50), 
    constraint _CLIENT_pk PRIMARY KEY(client_id), 
    constraint _CLIENT_ch CHECK (client_id>0), 
    typee_id INT NOT NULL REFERENCES CLIENT_TYPE(typee_id) 
) 

CREATE TABLE CLIENT_TYPE 
(
    typee_id int NOT NULL, 
    name_type varchar(50), 
    constraint CLIENT_TYPE_pk PRIMARY KEY(typee_id) 
) 

Внешний ключ выдает ошибку говоря:

Foreign key 'FK__Number__Name__1CF15040' references invalid table 'Users.Name' 

, что это здесь не так?

+0

В этом коде нет ссылки на имя Users.Name, которое предполагает, что какой-то другой код вызывает ошибку. Вы пробовали использовать свой размещенный код отдельно? –

ответ

0

Я не знаю, что точное сообщение об ошибке вы получаете, но у вас есть ошибки в текущем сценарии, и я думаю, что вы имеете в виду эту ошибку:

Foreign key 'FK___CLIENT__typee_i__55BFB948' references invalid table 'CLIENT_TYPE'.

Вы должны сначала создать CLIENT_TYPE таблицу, поэтому сценарий должен выглядеть следующим образом:

CREATE TABLE CLIENT_TYPE 
(
    typee_id INT NOT NULL , 
    name_type VARCHAR(50) , 
    CONSTRAINT CLIENT_TYPE_pk PRIMARY KEY (typee_id) 
) 

CREATE TABLE _CLIENT 
(
    client_id INT , 
    client_name VARCHAR(50) , 
    type VARCHAR(50) , 
    CONSTRAINT _CLIENT_pk PRIMARY KEY (client_id) , 
    CONSTRAINT _CLIENT_ch CHECK (client_id > 0) , 
    typee_id INT NOT NULL 
       REFERENCES CLIENT_TYPE (typee_id) 
) 

Как правило, вы должны сначала создать базовые таблицы, а затем таблицы, которые зависят от них.

+0

спасибо, что это работает сейчас –

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