Кто-нибудь знает, возможно ли использовать отладчик Visual Studio / SQL Server Management Studio для проверки содержимого параметра табличного значения, передаваемого в хранимую процедуру?
Чтобы дать тривиальный пример:
CREATE TYPE [dbo].[ControllerId] AS TABLE(
[id] [nvarchar](max) NOT NULL
)
GO
CREATE PROCEDURE [dbo].[test]
@controllerData [dbo].[ControllerId] READONLY
AS
BEGIN
SELECT COUNT(*) FROM @controllerData;
END
DECLARE @SampleData as [dbo].[ControllerId];
INSERT INTO @SampleData ([id]) VALUES ('test'), ('test2');
exec [dbo].[test] @SampleData;
Используя вышеприведенное с точкой останова в операторе exec, я могу без проблем войти в хранимую процедуру.Отладчик показывает, что у @controllerData local есть значение '(таблица)', но я не нашел никакого инструмента, который позволил бы мне реально просматривать строки, составляющие эту таблицу.