Каков правильный синтаксис для создания встроенной скалярной функции в SQL Server?
Электронные книги, в Типы функций , глава (2005 г. и выше ), говорят о встроенных скалярных функциях так, как будто они существуют и как будто блок BEGIN...END
не требуется (в отличие от многострочных функций):
Для встроенной скалярной функции нет тела функции; скаляр value является результатом одного оператора. Для скалярной функции с несколькими операторами тело функции, определенное в блоке BEGIN...END, содержит серию инструкций Transact -SQL, которые возвращают одно значение.
Я также заметил строку для "IS :встроенная скалярная функция" в списке типов объектов в таблице значений spt _:
SELECT name
FROM master..spt_values
WHERE type = 'O9T'
AND name LIKE '%function%'
Я пытался создать такую функцию с безуспешно:
CREATE FUNCTION AddOne(@n int) RETURNS int
AS
RETURN @n + 1
Сообщение об ошибке
Сообщение 102, уровень 15, состояние 31, процедура AddOne, строка 3 Неверный синтаксис возле "ВОЗВРАТ".
Я что-то упустил или в электронной документации произошла ошибка?