SQL Server

再帰SQLで最大再帰数の指定

投稿日:2013/05/08 更新日:

再帰SQLを実行すると最大再帰数に達してエラー

先日作成した日付を管理しているテーブルから共通テーブル式と再帰SQLを使って歯抜けの日付データを取得するですが、
日付を1年分にして再帰SQLを実行すると「ステートメントが終了しました。ステートメントの完了前に最大再帰数 100 に達しました。」
とエラーが発生しました。

どうやら無限ループ等が発生した場合のことを考慮して再帰SQLでは再起の出来る回数の
上限値を設定されているようです。

この上限値を変更するには「MAXRECURSION」を指定します。

最大再帰数「MAXRECURSION」を使う

設定方法は

で上限値を設定します。

設定できる値は「0」から「32,767」までで、「0」は上限なしに
なります。
規定値は「100」です。

最大再帰数「MAXRECURSION」の指定方法

実際の指定方法は

になります。

当サイトのおすすめ記事

レンタルサーバー 1

当サイトは約5年間、さくらのレンタルサーバで運用させて頂きました。 何かトラブルがあったわけではないのですが、WordPressの表示速度を速くしたくてSSD搭載のレンタルサーバーで運用してみることに ...

プログラミング 2

SQLでIFを使わずに条件分岐する SQLでIFを書けばWHERE句の内容を変えて検索できますが、条件ごとに同じようなSQLを 複数回書くのは面倒なので、1行で分岐できないかと言う事でSQLを作って見 ...

SQLServer 3

SQLServerで発生するエラーコードをSQLで取得する SQLServerで発生したエラーコードの内容を メッセージが定義されているテーブルから取得します。 エラーコードを取得するSQL SQLs ...

4

SQLServerでテーブル型を戻り値とする関数を作る SQLServerではINT型やVARCHAR型などを返す関数と同様に ユーザー定義テーブル型を戻り値とする関数を作成できます。 テーブル型を戻 ...

5

アフィリエイトで即効成果を出す アフィリエイトで成果を出す、なかなか難しいですよね。 サイトをいくつも立ち上げてすでにコツをつかんでいる人なら チョチョイっとやっていけるんでしょうけど。 でも実際はこ ...

-SQL Server
-,

Copyright© ソフトウェア開発日記 , 2017 AllRights Reserved.