Мой UDF не работает, когда я пытаюсь его использовать
Я все еще начинающий, но я создал этот UDF:
USE NorthWind
GO
IF EXISTS(SELECT name FROM SYSOBJECTS
WHERE name='SaleAfterDiscount'
AND type ='FN')
BEGIN
DROP FUNCTION SaleAfterDiscount;
END
GO
CREATE FUNCTION SaleAfterDiscount(@pPrice AS MONEY, @pQty AS SMALLINT, @pDiscount AS REAL)
RETURNS MONEY AS
BEGIN
DECLARE @SaleAfterDiscount MONEY;
SET @SaleAfterDiscount=(@pPrice*@pQty*(1-@pDiscount));
RETURN @SaleAfterDiscount;
END;
Затем я использую этот UDF, чтобы получить значение, и я получаю эту ошибку, которая говорит, что "Идентификатор нескольких частей"dbo.SaleAfterDiscount"не может быть связан. Я не уверен, что я сделал неправильно. Кто-нибудь может помочь?
1 ответ
Поскольку функция CREATE FUNCTION не указывает схему, скорее всего, она создается в другой схеме (зависит от вашей пользовательской конфигурации).
Попробуйте изменить CREATE так, как показано ниже
СОЗДАТЬ ФУНКЦИЮ ДБО. SaleAfterDiscount