Пример #1
0
        public void testLimitOnly()
        {
            var expected    = "select emp.id from emp order by emp.id fetch first 10 rows only";
            var transformer = new Db2PagingTransformer(-1, 10, null);
            var parser      = new DomaSqlParser("select emp.id from emp order by emp.id");
            var node        = transformer.Transform(parser.Parse());
            var parameters  = new List <ParameterEmulator>();
            var builder     = new DomaSqlBuilder(node, parameters, _config);
            var result      = builder.Build();

            result.ParsedSql.Is(expected);
        }
Пример #2
0
        public void testOffsetOnly()
        {
            var expected =
                "select * from ( select temp_.*, row_number() over( order by temp_.id ) as esp_rownumber_ from ( select emp.id from emp ) as temp_ ) as temp2_ where esp_rownumber_ > 5";
            var transformer = new Db2PagingTransformer(5, -1, null);
            var parser      = new DomaSqlParser("select emp.id from emp order by emp.id");
            var node        = transformer.Transform(parser.Parse());
            var parameters  = new List <ParameterEmulator>();
            var builder     = new DomaSqlBuilder(node, parameters, _config);
            var result      = builder.Build();

            result.ParsedSql.Is(expected);
        }
Пример #3
0
        internal override ISqlNode ToPagingSqlNode(ISqlNode node, long offset, long limit, string rowNumberColumn)
        {
            var transformer = new Db2PagingTransformer(offset, limit, rowNumberColumn);

            return(transformer.Transform(node));
        }