NutzCN Logo
问答 Sql.setPager 没有分页
发布于 1214天前 作者 duTaojin 1364 次浏览 复制 上一个帖子 下一个帖子
标签:
String sqlstr = "\n select * from  test \n";
Sql sql = Sqls.create(sqlstr );
sql.setPager(new Pager().setPageNumber(1).setPageSize(1));
dao.execute(sql);

打印出的sql语句并没有分页,顺便引用一个情况一样的帖子:
https://nutz.cn/yvr/t/q5ig25o8n8i0lphl28npisqgvf

更诡异的是,oracle是正常分页的,sqlServer不行。
两天下来各种检查各种对比各种睡不着,发现如果是sqlServer,select关键字前不能有其他字符。
这个4年前就有的问题能否解决下?不然从含有分页语句中选中分页前的语句有点麻烦的,阅读也不便。

7 回复

什么版本的nutz和数据库

Nutz Version : 1.r.65
Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64) @wendal

<dependency>
	    <groupId>com.microsoft.sqlserver</groupId>
	    <artifactId>mssql-jdbc</artifactId>
	    <version>7.4.1.jre8</version>
	</dependency>

sql.forceExecQuery()

加了也不行 @wendal

dao.execute(sql) 执行的时候
sql.isSelect() 是 true的

那就没办法了, 依然需要select开头

话说, 有啥原因做不到select开头吗? 需要额外的SQL控制函数??

倒也不是做不到以select开头,主要是setPager了却有可能不生效(加一点提示也好的),然后控制台打印的sql也只能和分页语句显示在同一行了。

添加回复
请先登陆
回到顶部