Visual studio 2015 SSDT OPENJSON错误警告消息
下面的函数给出 SSDT 14.0.60923.0中的警告 SQL71502:函数:[dbo].[fn_CheckPolicy]在Visual Studio 2015中对对象[dbo].[Users].[d]的引用不正确 有办法解决这个问题吗?还是SSDT中的一个bugVisual studio 2015 SSDT OPENJSON错误警告消息,visual-studio-2015,sql-server-data-tools,sql-server-2016,Visual Studio 2015,Sql Server Data Tools,Sql Server 2016,下面的函数给出 SSDT 14.0.60923.0中的警告 SQL71502:函数:[dbo].[fn_CheckPolicy]在Visual Studio 2015中对对象[dbo].[Users].[d]的引用不正确 有办法解决这个问题吗?还是SSDT中的一个bug CREATE FUNCTION [dbo].[fn_CheckPolicy] (@NameIdentifier nvarchar(128), @Id
CREATE FUNCTION [dbo].[fn_CheckPolicy] (@NameIdentifier nvarchar(128),
@Id uniqueidentifier)
RETURNS @returntable TABLE (
[Id] uniqueidentifier,
[Acl] int )
AS
BEGIN
WITH cte
AS (SELECT 1 AS [Level],
JSON_VALUE(d.[value], '$.id') AS 'Id',
JSON_VALUE(d.[value], '$.acl') AS 'acl',
JSON_VALUE(d.[value], '$.type') AS 'type',
JSON_QUERY(d.[value], '$.s') AS 'data'
FROM [dbo].[Users] u
CROSS apply OPENJSON(JSON_QUERY(u.[Policy], '$.c')) d
WHERE u.[NameIdentifier] = @nameIdentifier
UNION ALL
SELECT [Level] + 1,
ISNULL(JSON_VALUE(d.[value], '$.id'), '00000000-0000-0000-0000-000000000000'),
JSON_VALUE(d.[value], '$.acl'),
JSON_VALUE(d.[value], '$.type') 'type',
JSON_QUERY(d.[value], '$.a') 'data'
FROM cte
CROSS apply OPENJSON(JSON_QUERY([data], '$')) d)
INSERT INTO @returnTable
SELECT [Id],
CONVERT(int, CONVERT(varbinary, [Acl], 1))
FROM cte
WHERE [Id] = @id
IF @@ROWCOUNT = 0
INSERT INTO @returntable
([Id],[Acl])
VALUES (@id,'0xff')
RETURN
END
这看起来像是SSDT中处理OPENJSON的错误。在SSDT的最新版本中,这方面有一些错误修复,但这似乎是另一个问题。你能在使用“开发者工具(SSDT,BIDS等)”类别时为此提交一个连接错误吗?谢谢大家!