Рейтинг:
2
Richard Deeming
Имя вашей функции не может содержать .
если только ты не сбежишь от него.
Идентификаторы баз данных от SQL-сервера Майкрософт документы[^]
Дайте ему более простое название:
CREATE FUNCTION dbo.ReservationDetails (@IDMovies INT)
Или создайте его в отдельной схеме:
CREATE FUNCTION Reservations.ReservationDetails (@IDMovies INT)
Если ты
действительно хотите выстрелить себе в ногу, убегайте от имени функции. Вам также нужно будет избегать его каждый раз, когда вы его вызываете.
-- Don't do this!
CREATE FUNCTION [dbo].[Reservations.ReservationDetails] (@IDMovies INT)
xhon
Я получил это другое сообщение об ошибке:
"Имена столбцов в каждом представлении или функции должны быть уникальными. Имя столбца "IDMovies" в представлении или функции "ReservationDetails" указывается несколько раз."
Richard Deeming
Не используйте SELECT * FROM
; укажите список столбцов явно и убедитесь, что у вас нет повторяющихся имен столбцов.
Например, обе таблицы в вашем JOIN
есть колонка под названием IDMovies
.
xhon
Хорошо, спасибо, я отброшу таблицу, содержащую внешний ключ, и создам ее снова, назвав ссылочный столбец по-другому...Или есть способ избежать падения стола? Может быть, я могу использовать переменную для этого имени столбца внутри функции?
Richard Deeming
Вам не нужно ронять стол. Просто явно указывать список столбцов в SELECT
заявление.