Esempio n. 1
0
        internal CreateTempTableIndexColumnsChainer(Chainer prev, OrderedColumnArgument[] columns)
            : base(prev)
        {
            CheckNullOrEmptyAndThrow(Argc(() => columns, columns));

            Build = (buildContext, buildArgs) =>
            {
                var sql = Text.GenerateSql(50)
                          .EncloseLeft().S()
                          .NewLineIndent(OrderedColumnArgument.Concatenate(columns, buildContext, buildArgs))
                          .NewLine(Text.RightBracket)
                          .Terminate()
                          .ToString();

                TryThrow(buildContext);

                return(sql);
            };
        }
Esempio n. 2
0
        internal BeginTablePrimaryKeyChainer(Chainer prev, OrderedColumnArgument[] columns, bool nonclustered = false)
            : base(prev)
        {
            CheckNullOrEmptyAndThrow(Argc(() => columns, columns));

            Build = (buildContext, buildArgs) =>
            {
                var sql = Text.GenerateSql(70)
                          .NewLineIndent(Text.Comma)
                          .Append(nonclustered ? Text.PrimaryKeyNonclustered : Text.PrimaryKey).S()
                          .EncloseLeft()
                          .Append(OrderedColumnArgument.Concatenate(columns, buildContext, buildArgs))
                          .EncloseRight()
                          .ToString();

                TryThrow(buildContext);

                return(sql);
            };
        }
        internal BeginTableUniqueKeyChainer(Chainer prev, OrderedColumnArgument[] columns)
            : base(prev)
        {
            // check column
            CheckNullOrEmptyAndThrow(Argc(() => columns, columns));

            Build = (buildContext, buildArgs) =>
            {
                var sql = Text.GenerateSql(70)
                          .NewLineIndent(Text.Comma)
                          .Append(Text.Unique).S()
                          .EncloseLeft()
                          .Append(OrderedColumnArgument.Concatenate(columns, buildContext, buildArgs))
                          .EncloseRight()
                          .ToString();

                TryThrow(buildContext);

                return(sql);
            };
        }