zoukankan      html  css  js  c++  java
  • mysql和oracle在分页 长字符串上的区别

    mysql中有个分页的关键字   limit

    select * from table limit 10,5;//mysql里面这样是从10之后检索5条

    11 12 13 14 15

    分页公式:limit (PageIndex-1)*pageSize,pageSize 页面大小为6 第3页

    select * from table  limit 12,6

     oracle没有专门的关键字实现分页  靠 rownum(伪列)标明位置

    对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(<、<=、!=),并非说用>,& gt;=,=,between..and 时会提示SQL语法错误,而是经常是查不出一条记录来,还会出现似乎是莫名其妙的结果来(这段话非原创)

    select * from emp where rownum<=2;//查出前两条数据
    select * 
    from 
           ( select rownum as rn, t.* from emp t where rownum<=2 )
    where rn=2 ;//查出第二条数据

    select MyGrade.*

      from (select G.*, rownum rn

              from (select g.* from grade g order by chinese) G ) MyGrade

     where MyGrade.rn >= 10;//10条之后的

    select MyGrade.*

      from (select G.*, rownum rn

              from (select g.* from grade g order by chinese) G

             where rownum <= 10) MyGrade

     where MyGrade.rn >= 6;//6到10条

    3、显示第三页的5条记录
    当前所在页(currentPage)为3;
    每页显示的记录长度(lineSize)为temp;

    SELECT *
      FROM (SELECT rownum rb, emp.* from emp where rownum <= 15) temp
     WHERE temp.rb > 10

    pageIndex   pageSize

    select *

    from(select rownum rn,emp.* from emp where rownum<=pageIndex*pageSize) temp

    where temp.rn>(pageIndex-1)* pageSize

    长字符串的处理:

    Oracle有它独特的地方,数据类型有一个clob类型,此类型专门用于在insert或者update时候字符串长度大于等于4000个单字节时使用。所以在插入记录前一定要进行非空和长度的判断,不能为空的或者长度超出的都应该提出警告,返回上次操作。MySql就没有这样的数据类型。

  • 相关阅读:
    [转]relative、absolute和float
    CSS 布局属性(display,float,clear,visibility,overflow,overflow-x,overflow-y)
    CSS 块状元素和内联元素
    CSS定位
    CSS实例
    jQuery简单实例
    [转]几种常见SQL分页方式
    MyBatis Mapper XML 文件
    MyBatis XML 映射配置文件
    MyBatis 入门
  • 原文地址:https://www.cnblogs.com/yxj808/p/13367934.html
Copyright © 2011-2022 走看看