Microsoft SQL Server でのシーケンスの実装
データベースを操作する場合、多くの場合、どのテーブルにも直接関連付けられていない連続した値を生成する必要があります。または特定のデータ。従来、GUID を使用したり、行を挿入して数値を取得したりする方法が採用されていましたが、これらのアプローチには欠点がありました。
幸いなことに、SQL Server 2012 では、連続した数値を生成するためのより効率的で構造化されたソリューションを提供する SEQUENCE オブジェクトが導入されました。値。
SQL Server でシーケンスを作成する方法2012
SEQUENCE の作成は簡単です:
CREATE SEQUENCE Schema.SequenceName AS int INCREMENT BY 1 ;
このコマンドは、指定されたスキーマに SequenceName という名前の SEQUENCE を、初期値 0、増分値 1 で作成します。 SEQUENCE オブジェクトのその他のプロパティには、開始値と最大値と最小値が含まれます。 value.
INSERT ステートメントでの SEQUENCE の使用
コード内で SEQUENCE を利用するには、シーケンス内の次の値を格納する変数を宣言できます。
DECLARE @NextID int ; SET @NextID = NEXT VALUE FOR Schema.SequenceName;
次の値を取得したら、それを INSERT で使用できますステートメント:
INSERT Schema.Orders (OrderID, Name, Qty) VALUES (@NextID, 'Rim', 2) ;
SEQUENCE オブジェクトによって生成された番号は、自動的に OrderID 列に挿入されます。
シーケンスを使用する利点
シーケンス代替品に比べていくつかの利点があるメソッド:
以上がSQL Server シーケンスはどのようにして連続値の生成を簡素化できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。