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

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

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

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

25
задан Yulia V 15 February 2013 в 12:01
поделиться

3 ответа

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

@lastchild = dbo.getlastchild(@root)
45
ответ дан 28 November 2019 в 18:19
поделиться

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

set @lastchild = dbo.getlastchild(@root)

Из CREATE FUNCTION

Функции со скалярным значением могут быть вызваны там, где используются скалярные выражения, { {1}}, включая вычисляемые столбцы и определения ограничений CHECK . При вызове функций со скалярными значениями как минимум используйте имя функции , состоящее из двух частей.

13
ответ дан 28 November 2019 в 18:19
поделиться

Попробуйте

set @lastchild = dbo.getlastchild(@root)
3
ответ дан 28 November 2019 в 18:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: