Подтвердить что ты не робот

Как вызвать скалярную функцию в хранимой процедуре

Я пробовал проблему с этим кодом.

DECLARE @root hierarchyid
DECLARE @lastchild hierarchyid
SELECT @root = NodeHierarchyID FROM NodeHierarchy WHERE ID = 1
SET @lastchild = getlastchild(@root)

В нем говорится, что он не распознает функцию getlastchild. Что я здесь делаю неправильно?

4b9b3361

Ответ 1

попробуйте включить идентификатор схемы, как в

@lastchild = dbo.getlastchild(@root)

Ответ 2

Использование

set @lastchild = dbo.getlastchild(@root)

Из CREATE FUNCTION

Функции scalar-value могут быть вызваны где используются скалярные выражения, включая вычисленные столбцы и CHECK определения ограничений. Когда вызывая скалярнозначные функции, в минимальное использование двухчастного имени функция.

Ответ 3

Try

set @lastchild = dbo.getlastchild(@root)

Ответ 4

Try:

SELECT * FROM dbo.function(@parameters)