All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cn.dreampie.orm.dialect.OracleDialect Maven / Gradle / Ivy

There is a newer version: 1.3.0.RELEASE
Show newest version
package cn.dreampie.orm.dialect;

/**
 * Created by ice on 15-1-12.
 */
public class OracleDialect extends DefaultDialect {


  public String getDbType() {
    return "oracle";
  }

  public String validQuery() {
    return "SELECT 1 FROM dual";
  }

  public String driverClass() {
    return "oracle.jdbc.driver.OracleDriver";
  }

  public String paginateWith(int pageNumber, int pageSize, String sql) {
    if (pageNumber == 1 && pageSize == 1) {
      //如果sql本身只返回一个结果
      if (selectSinglePattern.matcher(sql).find()) {
        return sql;
      }
    }
    int start = (pageNumber - 1) * pageSize + 1;
    int end = pageNumber * pageSize;
    return "SELECT * FROM ( SELECT row_.*, ROWNUM rownum_ FROM (  " + sql + " ) row_ WHERE ROWNUM <= " + end + ") paginate_alias" + " WHERE paginate_alias.rownum_ >= " + start;
  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy