internal BeginCursorFetchNextChainer(Chainer prev) : base(prev) { var cursor = BeginCursorChainer.TryGetBeginCursor(this); Build = (buildContext, buildArgs) => { return(Text.GenerateSql(100) .NewLine(Text.FetchNext).S() .Append(Text.From).S() .Append(cursor.CursorName).S() .Append(Text.Into).S() .Append(cursor.Variables).Terminate() .ToString()); }; }
internal EndCursorChainer(Chainer prev) : base(prev) { var root = GetRoot(); --root.CursorCounter; var cursor = BeginCursorChainer.TryGetBeginCursor(this); CheckAndThrow(); Build = (buildContext, buildArgs) => { return(Text.GenerateSql(50) .NewLine(Text.End).Terminate() .NewLine(Text.Close).S().Append(cursor.CursorName).Terminate() .NewLine(Text.Deallocate).S().Append(cursor.CursorName).Terminate() .ToString()); }; }