Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2015 SSDT OPENJSON错误警告消息_Visual Studio 2015_Sql Server Data Tools_Sql Server 2016 - Fatal编程技术网

Visual studio 2015 SSDT OPENJSON错误警告消息

Visual 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

下面的函数给出 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             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等)”类别时为此提交一个连接错误吗?谢谢大家!