을 실행할 수 없습니다. 내 저장 프로 시저입니다. SQL Server에서 아래 스크립트를 실행하면이 오류가 발생합니다.저장 프로 시저를 통해 SQL Server 및 코드
최대 저장 프로 시저, 함수, 트리거 또는 뷰 중첩 수준이 초과되었습니다 (제한 32).
코드 :
Create Procedure [dbo].[GetTotalProductWcnCrashes]
(
@DroidbugCount int,
@totalproductcrashes int out,
@Uniqueproductcrashes int out,
@SnsPL varchar(500) out,
@Startdate datetime out,
@Metabuild varchar(500) out,
@Rivabuild varchar(500) out,
@Appsbuild varchar(500) out,
@toatalWcnCrashes int out,
@UniqueWcnCrashes int out,
@TotalHours numeric(18,0) OUT,
@Mtbf numeric(18,4) OUT,
@Cpth numeric(18,4) OUT
)
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@SQL nvarchar(max),
@SQLString nvarchar(max),
@ParmDefinition nvarchar(max),
@totalproductcrashes1 int,
@Uniqueproductcrashes1 int ,
@SnsPL1 varchar(500),
@Startdate1 datetime,
@Metabuild1 varchar(500),
@Rivabuild1 varchar(500),
@Appsbuild1 varchar(500),
@toatalWcnCrashes1 int,
@UniqueWcnCrashes1 int,
@TotalHours1 numeric(18,0),
@Mtbf1 numeric(18,4),
@Cpth1 numeric(18,4),
@DroidbugCount1 INT
SET @SQL = N'SELECT @SnsPL = SnsPl.PL, @Startdate = SnsHeader.Startdate, @Metabuild = SnsHeader.Metabuild, @Rivabuild = SnsHeader.RivaBuild, @Appsbuild = SnsHeader.Appsbuild, @totalproductcrashes = SUM(CASE WHEN dbo.SnsResult.Crash like %Yes% THEN 1 ELSE 0 END),
@Uniqueproductcrashes = SUM(CASE WHEN dbo.SnsResult.UniqueCrash like %Yes% AND dbo.SnsResult.CR_ID is NULL THEN 1 ELSE 0 END),
@TotalHours = Sum(CAST(dbo.SnsResult.ResultDuration AS int))
FROM dbo.SnsHeader
INNER JOIN dbo.SnsResult ON dbo.SnsHeader.SnsHeader_PK = dbo.SnsResult.SnsHeader_FK
INNER JOIN dbo.SnsPl ON dbo.SnsHeader.PL_FK = dbo.SnsPl.PL_PK
GROUP BY dbo.SnsPl.PL , SnsHeader.Startdate ,SnsHeader.Metabuild,SnsHeader.RivaBuild,SnsHeader.Appsbuild'
SET @SQLString= N'EXEC GetTotalProductWcnCrashes @DroidbugCount,
@totalproductcrashes OUTPUT,
@Uniqueproductcrashes OUTPUT,
@SnsPL OUTPUT,
@Startdate OUTPUT,
@Metabuild OUTPUT,
@Rivabuild OUTPUT,
@Appsbuild OUTPUT,
@toatalWcnCrashes OUTPUT,
@UniqueWcnCrashes OUTPUT,
@TotalHours OUTPUT,
@Mtbf OUTPUT,
@Cpth OUTPUT'
SET @ParmDefinition = N'@DroidbugCount int,
@totalproductcrashes INT OUTPUT,
@Uniqueproductcrashes INT OUTPUT,
@SnsPL varchar(500) OUTPUT,
@Startdate datetime OUTPUT,
@Metabuild varchar(500) OUTPUT,
@Rivabuild varchar(500) OUTPUT,
@Appsbuild varchar(500) OUTPUT,
@toatalWcnCrashes INT OUTPUT,
@UniqueWcnCrashes INT OUTPUT,
@TotalHours numeric(18,0) OUTPUT,
@Mtbf numeric(18,4) OUTPUT,
@Cpth numeric(18,4) OUTPUT'
SET @DroidbugCount1 = 1
EXECUTE sp_executesql
@SQLString,
@ParmDefinition,
@[email protected],
@totalproductcrashes = @totalproductcrashes1 OUTPUT ,
@Uniqueproductcrashes = @Uniqueproductcrashes1 OUTPUT,
@SnsPL = @SnsPL1 OUTPUT,
@Startdate = @Startdate1 OUTPUT ,
@Metabuild = @Metabuild1 OUTPUT,
@Rivabuild = @Rivabuild1 OUTPUT,
@Appsbuild = @Appsbuild1 OUTPUT,
@toatalWcnCrashes = @toatalWcnCrashes1 OUTPUT,
@UniqueWcnCrashes = @UniqueWcnCrashes1 OUTPUT,
@TotalHours = @TotalHours1 OUTPUT,
@Mtbf = @Mtbf1 OUTPUT,
@Cpth = @Cpth1 OUTPUT
SELECT @totalproductcrashes1 as N'@totalproductcrashes',
@Uniqueproductcrashes1 as N'@Uniqueproductcrashes',
@SnsPL1 as N'@SnsPL',
@Startdate1 as N'@Startdate',
@Metabuild1 as N'@Metabuild',
@Rivabuild1 as N'@Rivabuild',
@Appsbuild1 as N'@Appsbuild',
@toatalWcnCrashes1 as N'@toatalWcnCrashes',
@UniqueWcnCrashes1 as N'@UniqueWcnCrashes',
@TotalHours1 as N'@TotalHours',
@Mtbf1 as N'@Mtbf',
@Cpth1 as N'@Cpth'
END
누군가가 위의 저장 프로 시저를 해결하는 데 도움이, 내가 저장 프로 시저를 작성하는 새입니다.
그리고 위의 저장 프로 시저를 C# 코드에서 호출하는 방법
감사합니다.
보인다. SQL Server 32에서이 오류가 발생하는 이유는 최대 중첩 수준입니다. – Abhi