SQL: добавить отношения к локальной темп объявленные таблицы? - PullRequest
0 голосов
/ 17 декабря 2018

Вот полный запрос

DECLARE @Customers TABLE(
  Id INT NOT NULL IDENTITY PRIMARY KEY,
  FirstName VARCHAR(255) NOT NULL,
  LastName VARCHAR(255) NOT NULL,
  Salary INT NOT NULL,
  [Middle Name] VARCHAR(255)
)

DECLARE @Books TABLE(
  Id INT NOT NULL IDENTITY PRIMARY KEY,
  Title VARCHAR(255) NOT NULL,
  CustomerId INT NOT NULL,
  CONSTRAINT FK_Books_Customer
    FOREIGN KEY (CustomerId) 
    REFERENCES Customers(Id)
);

Я получаю ошибку при попытке выполнить этот запрос

Incorrect syntax near the keyword 'FOREIGN'.

Итак, возможно ли добавить отношения в локальные объявленные переменные таблицы икак если не так?

1 Ответ

0 голосов
/ 17 декабря 2018

Мы не можем создать внешний ключ со ссылкой на переменную или временную таблицу.Это потому, что temp / variable отбрасываются, когда вы заканчиваете свою операцию.В исключительных случаях, когда вы убиваете ваш spid, тогда может быть разрешено добавить внешний ключ во временную таблицуВ этом случае удаление временной или переменной таблицы требуется в определенном порядке, что может быть проблемой.

...