1
これは初めてのキャッシュの使用です。私は私が私のログインページが実行しようとする私のwebconfig.Whenにtrueに自分のローカルキャッシュを設定するSystem.Data.SqlClient.SqlExceptionは HRESULT = 0x80131904 メッセージ=最大ストアドプロシージャ、ファンクションを発生Sql execption:最大ストアドプロシージャのレベルが超過
次のエラーを与えます、トリガー、またはビューの入れ子レベルを超えました(制限32)。 ソース=ネットSqlClientデータプロバイダ のStackTrace:
それは次のコード
私が間違って何をやっている時にエラーがスローされますか?まったく同じコードとdbが他のマシンで正常に動作するためです。私はstackflowで他の同様のエラーの言及を見ましたが、何も助けませんでした。
--WITH ENCRYPTION
AS
BEGIN
;WITH cte AS (
SELECT //do selection
FROM Table g WITH(NOLOCK)
)
SELECT //do selection
INTO #cte
FROM cte c
INNER JOIN list.Type gt WITH(NOLOCK) ON c.TypeId = gt.TypeID
INNER JOIN table.crumb br WITH(NOLOCK) ON c.ID = br.ID
ORDER BY Lev
SELECT
// select columns
NULL AS ResultExpected
INTO #TempGame
FROM #cte tg
JOIN list.Type gt WITH(NOLOCK) ON tg.TypeID = gt.TypeID
WHERE tg.ID IN (
SELECT ID FROM table2 WITH(NOLOCK)
WHERE ID = tg.ID
)
SELECT
//select columns
INTO #Temp2
FROM tanbe2 m WITH(NOLOCK)
INNER JOIN table g WITH(NOLOCK) ON m.ID = g.ID
//perform all joins
WHERE m.ID IN (SELECT ID FROM #Temp)
GETDATE() < ISNULL(m.ResultDateTime, m.ResultExpected)
SELECT * FROM #Temp
SELECT * FROM #Temp2
ORDER BY ResultExpected
DROP TABLE #cte
DROP TABLE #Temp
DROP TABLE #Temp2
END
GO
'GetDetailsAll'メソッドのコンテンツを表示できますか?通常、 'SELECT'文に' OPTION(MAXRECURSION 0) 'を追加してSQL Serverクエリで修正することはできますが、C#コードからどのようにクエリを実行するのか分かりません。 –
こんにちは@TetsuyaYamamoto私はGetDetailsAllを追加しました。しかし、SQLクエリはあまりにも大きいので、私はそれを少し削減する必要があったが、その基本的な構造 – Jesse