易截截图软件、单文件、免安装、纯绿色、仅160KB

解析oracle的rownum

对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数,而且rownum不能以任何表的名称作为前缀。
举例说明:
例如表:student(学生)表,表结构为:
ID       char(6)      --学号
name    VARCHAR2(10)   --姓名
create table student (ID char(6), name VARCHAR2(100));
insert into sale values('200001',‘张一’);
insert into sale values('200002',‘王二’);
insert into sale values('200003',‘李三’);
insert into sale values('200004',‘赵四’);
commit;
(1) rownum 对于等于某值的查询条件
如果希望找到学生表中第一条学生的信息,可以使用rownum=1作为条件。但是想找到学生表中第二条学生的信息,使用rownum=2结果查不到数据。因为rownum都是从1开始,但是1以上的自然数在rownum做等于判断是时认为都是false条件,所以无法查到rownum = n(n>1的自然数)。
SQL> select rownum,id,name from student where rownum=1;(可以用在限制返回记录条数的地方,保证不出错,如:隐式游标)
SQL> select rownum,id,name from student where rownum=1;
    ROWNUM ID     NAME
---------- ------ ---------------------------------------------------
         1 200001 张一
SQL> select rownum,id,name from student where rownum =2;
    ROWNUM ID     NAME
---------- ------ ---------------------------------------------------
(2)rownum对于大于某值的查询条件
   如果想找到从第二行记录以后的记录,当使用rownum>2是查不出记录的,原因是由于rownum是一个总是从1开始的伪列,Oracle 认为rownum> n(n>1的自然数)这种条件依旧不成立,所以查不到记录
SQL> select rownum,id,name from student where rownum >2;
ROWNUM ID     NAME
---------- ------ ---------------------------------------------------
那如何才能找到第二行以后的记录呀。可以使用以下的子查询方法来解决。注意子查询中的rownum必须要有别名,否则还是不会查出记录来,这是因


相关文档:

Oracle学习笔记摘录8

   <1> ORACLE的使用
       启动和关闭
       工具操作ORACLE -- sql*plus
                        plsql deve ......

Oracle学习笔记摘录9

   a)数据库本身的优化
       初始化文件 init.ora
         open_cursors = 150 打开的游标的个数
            很多的存储过程的时候 可以把它调大些
    ......

Oracle学习笔记摘录10

 <1>逻辑备份
  不用去拷贝数据库的物理文件
  备份逻辑上的结构
  外部的工具:导出和导入的工具
  DOS下的命令 cmd下执行
    导出exp  export缩写形式
查看帮助 exp help=y
    使用参数文件导出
     exp parfile=c:\ab ......

Oracle SQL*Plus的环境配置(更改行宽)

当我们用oracle的SQL*Plus工具输入sql语句的时候,SQL*Plus的默认设置总有些不合理的地方,此时我们通过以下一些方法改进:
1、可以运用SQL*Plus自身一些语句改变环境参数。
     SQL>  set linesize 900 ;   /* 更改显示的宽度, 设置成900后, 一行数据就不会分两行显示了 */
&nb ......

Oracle和Tomcat端口冲突

Oracle和Tomcat端口冲突
原因:
    Oracle 9i开始,创建数据库时默认包含了XDB特性。一旦启动了数据库和Listener,Oracle XDB的http服务就占用8080端口,刚好和JBoss、Tomcat等默认端口冲突。
解决方法
 1、改动tomcat端口,
打开D:\Tomcat5\conf\server.xml,查找如下文本位置:
<!-- Def ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号