org.velocityweb.jdbc.dialect
Class SQLServer2000PageDialect

java.lang.Object
  extended byorg.velocityweb.jdbc.dialect.StandardPageDialect
      extended byorg.velocityweb.jdbc.dialect.SQLServer2000PageDialect
All Implemented Interfaces:
PageDialect

public class SQLServer2000PageDialect
extends StandardPageDialect

SQL Server 2000 page dialect, this class has a bug, for the last page data, if page size = 10, total count = 23, then last page data count should be 3, but you will get last 10 using this class

Author:
Jacklondon Chen

Constructor Summary
SQLServer2000PageDialect()
           
 
Method Summary
 int[] getPageParemeterValuesWithPageInfo(int pageIndex, int pageSize)
          get parementer values if the page SQL is using ? before by calling public String getPageSql(String sql, String orderBy)
protected  java.lang.String getPageSqlImpl(java.lang.String sql, java.lang.String orderBy, java.lang.Long pageIndex, java.lang.Long pageSize)
          generate page SQL by non-page SQL this method has a bug, for the last page data, if page size = 10, total count = 23, then last page data count should be 3, but you will get last 10 using this class.
 java.util.List mergePageParemeterValues(java.util.List originalParemeterList, int[] pageParemeterValues)
          merge page paremeter values, some normally add after orignal paramters
 
Methods inherited from class org.velocityweb.jdbc.dialect.StandardPageDialect
getCountSql, getPageSqlWithoutPageInfo, getPageSqlWithPageInfo, supportSubqueryNaming, validatePageSqlParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SQLServer2000PageDialect

public SQLServer2000PageDialect()
Method Detail

getPageSqlImpl

protected java.lang.String getPageSqlImpl(java.lang.String sql,
                                          java.lang.String orderBy,
                                          java.lang.Long pageIndex,
                                          java.lang.Long pageSize)
generate page SQL by non-page SQL this method has a bug, for the last page data, if page size = 10, total count = 23, then last page data count should be 3, but you will get last 10 using this class.
And, the 'order by' columns should be in the 'select' columns

Overrides:
getPageSqlImpl in class StandardPageDialect
Parameters:
sql -
pageIndex - page index, begin from 0, if this parameter is null, the result SQL will place a '?'
pageSize - page size, bigger than 0, if this parameter is null, the result SQL will place a '?'
Returns:

getPageParemeterValuesWithPageInfo

public int[] getPageParemeterValuesWithPageInfo(int pageIndex,
                                                int pageSize)
get parementer values if the page SQL is using ? before by calling public String getPageSql(String sql, String orderBy)

Specified by:
getPageParemeterValuesWithPageInfo in interface PageDialect
Overrides:
getPageParemeterValuesWithPageInfo in class StandardPageDialect
Parameters:
pageIndex -
pageSize -
Returns:
int array contains 2 items.

mergePageParemeterValues

public java.util.List mergePageParemeterValues(java.util.List originalParemeterList,
                                               int[] pageParemeterValues)
merge page paremeter values, some normally add after orignal paramters

Specified by:
mergePageParemeterValues in interface PageDialect
Overrides:
mergePageParemeterValues in class StandardPageDialect
Parameters:
pageParemeterValues -
Returns:
the paremeter list for query current page data