Миграция кода asp.net(VB.net) для использования функций и подпрограмм в качестве параметров. Использование MS Server Management Studio для создания указанных функций и подсистем. Хотелось бы протестировать функции из MS SMS, прежде чем тестировать их через веб-страницу. Вот пример. Скажем, у меня есть функция под названием "dbo.getNumber"
Я пытаюсь протестировать его, используя следующее:
USE [someDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
declare @value int;
select @value = dbo.getNumber;
print @value;
go
Когда я печатаю F5 (для запуска "запроса" ), он дает следующее сообщение:
"В этом контексте не разрешено имя" dbo.getNumber ". Допустимыми выражениями являются константы, константные выражения и (в некоторых контекстах) переменные. Имена столбцов не разрешены."
Функция dbo.getNumber была принята просто отлично, кстати. (Он подсчитывает записи базы данных, соответствующие определенным критериям.)
Надеюсь, вы можете сделать вывод из нерабочего кода, что я пытаюсь сделать.
Как я могу напечатать значение функции (для целей тестирования) из SMS?
Правильное решение в соответствии с Джеймсом Джонсоном ниже:
USE [someDB]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
declare @value int;
select @value = dbo.getNumber();
print @value;
go
Обратите внимание на парсеры для вызова функции. Также обратите внимание: intellisense в SMS подчеркивает dbo.getNumber(), как если бы это была ошибка, но запуск запроса с помощью F5 и получение правильного результата.