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

关于oracle随机

17:00:59 SQL> desc dbms_random;
Element    Type     
---------- ---------
SEED       PROCEDURE
VALUE      FUNCTION
NORMAL     FUNCTION
STRING     FUNCTION
INITIALIZE PROCEDURE
RANDOM     FUNCTION
TERMINATE PROCEDURE
NUM_ARRAY TYPE     
使用desc命令查看该过程的结构,其中我们需要用到的也就values 、normal、string、random这四个函数吧,这四个函数都具有取随机值的功能,具体呢就不太一样了。
且看:
17:01:06 SQL> select dbms_random.value() from dual;
DBMS_RANDOM.VALUE()
-------------------
0.0536824248407651
17:05:09 SQL> select dbms_random.value(10,100) from dual;
DBMS_RANDOM.VALUE(10,100)
-------------------------
         29.2420951206225
17:05:27 SQL> select dbms_random.value(-1,-4) from dual;
DBMS_RANDOM.VALUE(-1,-4)
------------------------
       -3.98278017569502
参照oracle官方文档解释呢,value函数用于返回两个数值之间的随机数,value(low,high),如果你想得到的数值结果介于两个数之间呢,就用value了。
17:05:37 SQL> select dbms_random.normal() from dual;
DBMS_RANDOM.NORMAL()
--------------------
    1.09252306706526
17:08:10 SQL> select dbms_random.normal() from dual;
DBMS_RANDOM.NORMAL()
--------------------
-0.279331762111692
至于normal函数呢,那就是真正的随机数啦,出来的结果呢肯定不会让你猜到拉(如果你猜对了,恭喜你,你可以去买彩票啦!)
再看random函数
17:08:12 SQL> select dbms_random.random() from dual;
DBMS_RANDOM.RANDOM()
--------------------
          1936087379
17:10:30 SQL> select dbms_random.random() from dual;
DBMS_RANDOM.RANDOM()
--------------------
          -972915078
查看官方文档说的是random函数返回的值介于2的31次方和-2的31次方之间


相关文档:

Oracle USERENV和sys_context

1.USEREVN()
返回当前用户环境的信息,opt可以是:
ENTRYID,SESSIONID,TERMINAL,ISDBA,LABLE,LANGUAGE,CLIENT_INFO,LANG,VSIZE
1.ISDBA   查看当前用户是否是DBA如果是则返回true
SQL> select userenv('isdba') from dual;
USEREN
------
FALSE
2.SESSION 返回会话标志
SQL> select userenv('sessio ......

oracle用户权限的查询

oracle中查看用户权限
1.查看所有用户:
  select * from dba_users;
  select * from all_users;
  select * from user_users;
2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):
  select * from dba_sys_privs;
  select * from user_sys_privs;
3.查看角色(只能查看登陆用 ......

oracle Cursor使用大全

使用Cursor:
--测试一下,今天才申请使用itpub.net 的blog
declare
RoomID Room.RoomID%Type;
RoomName Room.RoomName%Type;
cursor crRoom is
select RoomID,RoomName
from Room;
begin
open crRoom;loop;
fetch crRoom into RoomID,RoomName;
exit when crRoom%notFound;
end loop;
close crRoom;
end;
& ......

Oracle中rownum的用法

1、查询第几行的记录
select sal from emp where rownum=1; //查询得到第一行记录
select sal from emp where rownum=5; //不可以查询到第五行记录,因为rownum 总是从1开始查询的,故这种方式不可以直接得到第几行的记录。若想得到第五行记录,应采用如下方式:
select r,sal from (select rownum r,sal from emp) wher ......

使用impdp复制oracle的schema数据迁移

 测试环境:

    源: windows 2003, oracle 10202 
    目标:windows 2000, oracle 10203 
    注:本文中所说的 schema 和 user 是一个意思。 
   
impdp 的数据源既可以是expdp 导出来的DMP文件,也可以是一数据库,通过netwo ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号