Sql server 2005 如何使用nHibernate和CTE浏览数据?

Sql server 2005 如何使用nHibernate和CTE浏览数据?,sql-server-2005,nhibernate,Sql Server 2005,Nhibernate,是否有人可以向我展示一些示例代码,这些代码可以在给定的表中翻页浏览数据,并在后台使用CTE nhibernate是否可以跨各种现成的数据库工作?我现在使用的是MS SQL Server 2008,但如果客户希望有一天使用Oracle,该怎么办?对于分页,您只需在查询中定义开始和结束结果: IQuery q = sess.CreateQuery("from DomesticCat cat"); q.SetFirstResult(20); q.SetMaxResults(10); IList cat

是否有人可以向我展示一些示例代码,这些代码可以在给定的表中翻页浏览数据,并在后台使用CTE


nhibernate是否可以跨各种现成的数据库工作?我现在使用的是MS SQL Server 2008,但如果客户希望有一天使用Oracle,该怎么办?

对于分页,您只需在查询中定义开始和结束结果:

IQuery q = sess.CreateQuery("from DomesticCat cat");
q.SetFirstResult(20);
q.SetMaxResults(10);
IList cats = q.List();

NHibernate应该跨各种数据库工作。许多方言都是现成的。SqlServer和Oracle都得到了很好的支持


有关受支持的方言列表,请参阅。

Stefan显示的方式将是最好的。我不知道你为什么要在问题中使用常见的表表达式,没有必要这样做。符文,CTE会更有效。Stefan,sql是什么样子的?试试看,我不能把它背下来,它看起来很复杂。但是它使用底层dbms的SQL特性。