《ORACLE常用傻瓜問題1000問全集-上集》

摘要:《ORACLE常用傻瓜问题1000問全集-上集》

參考資料來源: http://www.wangchao.net.cn/bbsdetail_1491765.html

共分十集,部份內容不齊全但已有莫大幫助,在此集中並留存紀錄。

此資料對如我一般的初學者十分有用,要找時間研究才是

---------------------------------------------------------------------------------------------------------------
  1. Oracle安装完成后的初始口令?
  internal/oracle
  sys/change_on_install
  system/manager
  scott/tiger
  sysman/oem_temp
  2. ORACLE9IAS WEB CACHE的初始默认用户和密码?
  administrator/administrator
  3. oracle 8.0.5怎么创建数据库?
  用orainst。如果有motif界面,可以用orainst /m
  4. oracle 8.1.7怎么创建数据库?
  dbassist
  5. oracle 9i 怎么创建数据库?
  dbca
  6. oracle中的裸设备指的是什么?
  裸设备就是绕过文件系统直接访问的储存空间
  7. oracle如何区分 64-bit/32bit 版本?
  $ sqlplus '/ AS SYSDBA'
  SQL*Plus: Release 9.0.1.0.0 - Production on Mon Jul 14 17:01:09 2003
  (c) Copyright 2001 Oracle Corporation. All rights reserved。
  Connected to:
  Oracle9i Enterprise Edition Release 9.0.1.0.0 - Production
  With the Partitioning option
  JServer Release 9.0.1.0.0 - Production
  SQL select * from v$version;
  BANNER
  ----------------------------------------------------------------
  Oracle9i Enterprise Edition Release 9.0.1.0.0 - Production
  PL/SQL Release 9.0.1.0.0 - Production
  CORE 9.0.1.0.0 Production
  TNS for Solaris: Version 9.0.1.0.0 - Production
  NLSRTL Version 9.0.1.0.0 - Production
  SQL
  8. SVRMGR什么意思?
  svrmgrl,Server Manager 9i下没有,已经改为用SQLPLUS了
  sqlplus /nolog 变为归档日志型的
  9. 请问如何分辨某个用户是从哪台机器登陆ORACLE的?
  SELECT machine ,terminal FROM V$SESSION;
  10. 用什么语句查询字段呢?
  desc table_name 可以查询表的结构
  select field_name,... from ... 可以查询字段的值
  select * from all_tables where table_name like '%'
  select * from all_tab_columns where table_name='??'
  11. 怎样得到触发器、过程、函数的创建脚本?
  desc user_source
  user_triggers
  12. 怎样计算一个表占用的空间的大小?
  select owner,table_name,NUM_ROWS,BLOCKS*AAA/1024/1024 "Size M",EMPTY_BLOCKS,LAST_ANALYZED
  from dba_tables
  where table_name='XXX';
  Here: AAA is the value of db_block_size;
  XXX is the table name you want to check
  13. 如何查看最大会话数?
  SELECT * FROM V$PARAMETER WHERE NAME LIKE 'proc%';
  SQL
  SQL show parameter processes
  NAME TYPE VALUE
  ------------------------------------ ------- ------------------------------
  aq_tm_processes integer 1
  db_writer_processes integer 1
  job_queue_processes integer 4
  log_archive_max_processes integer 1
  processes integer 200
  这里为200个用户。
  Select * from v$license;
  其中sessions_highwater纪录曾经到达的最大会话数
  14. 如何查看系统被锁的事务时间?
  select * from v$locked_object ;
  15. 如何以archivelog的方式运行oracle?
  init.ora
  log_archive_start = true
  RESTART DATABASE
  16. 怎么获取有哪些用户在使用数据库?
  select username from v$session;
  17. 数据表中的字段最大数是多少?
  表或视图中的最大列数为 1000
  18. 怎样查得数据库的SID ?
  select name from v$database;也可以直接查看 init.ora文件
  19. 如何在Oracle服务器上通过SQLPLUS查看本机IP地址 ?
  select sys_context('userenv','ip_address') from dual;
  如果是登陆本机数据库,只能返回127.0.0.1
  20. UNIX 下怎么调整数据库的时间?
  su -root
  date -u 08010000
  21. 在ORACLE TABLE中如何抓取MEMO类型栏为空的资料记录?
  select remark from oms_flowrec where trim(' ' from remark) is not null ;
  22. 如何用BBB表的资料去更新AAA表的数据(有关联的字段)
  UPDATE AAA SET BNS_SNM=(SELECT BNS_SNM FROM BBB WHERE AAA.DPT_NO=BBB.DPT_NO) WHERE BBB.DPT_NO IS NOT NULL;
  23. P4计算机安装方法
  将SYMCJIT.DLL改为SYSMCJIT.OLD
  24. 如何查询SERVER是不是OPS?
  SELECT * FROM V$OPTION;
  如果PARALLEL SERVER=TRUE则有OPS能
  25. 如何查询每个用户的权限?
  SELECT * FROM DBA_SYS_PRIVS;
  26. 如何将表移动表空间?
  ALTER TABLE TABLE_NAME MOVE TABLESPACE_NAME;
  27. 如何将索引移动表空间?
  ALTER INDEX INDEX_NAME REBUILD TABLESPACE TABLESPACE_NAME;
  28. 在LINUX,UNIX下如何启动DBA STUDIO?
  OEMAPP DBASTUDIO
  29. 查询锁的状况的对象有?
  V$LOCK, V$LOCKED_OBJECT, V$SESSION, V$SQLAREA, V$PROCESS ;
  查询锁的表的方法:
  SELECT S.SID SESSION_ID,S.USERNAME,DECODE(LMODE,0,'None',1,'Null',2,'Row-S (SS)',3,'Row-X (SX)',4,'Share',5,'S/Row-X (SSX)',6,'Exclusive',TO_CHAR(LMODE)) MODE_HELD,DECODE(REQUEST,0,'None',1,'Null',2,'Row-S (SS)',3,'Row-X (SX)',4,'Share',5,'S/Row-X (SSX)',6,'Exclusive',TO_CHAR(REQUEST)) MODE_REQUESTED,O.OWNER||'.'||O.OBJECT_NAME||' ('||O.OBJECT_TYPE||')',S.TYPE LOCK_TYPE,L.ID1 LOCK_ID1,L.ID2 LOCK_ID2 FROM V$LOCK L,SYS.DBA_OBJECTS O,V$SESSION S WHERE L.SID = S.SID AND L.ID1 = O.OBJECT_ID ;
  30. 如何解锁?
  ALTER SYSTEM KILL SESSION ‘SID,SERIR#’;
  31. SQLPLUS下如何修改编辑器?
  DEFINE _EDITOR="" -- 必须加上双引号来定义新的编辑器,也可以把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它永久有效。
  32. ORACLE产生随机数的函数?
  DBMS_RANDOM.RANDOM
  33. LINUX下查询磁盘竞争状况命令?
  sar -d
  33. LINUX下查询CPU竞争状况命令?
  sar -r
  34. 查询当前用户对象?
  SELECT * FROM USER_OBJECTS;
  SELECT * FROM DBA_SEGMENTS;
  35. 如何获取错误信息?
  SELECT * FROM USER_ERRORS;
  36. 如何获取链接状况?
  SELECT * FROM DBA_DB_LINKS;
  37. 查看数据库字符状况?
  SELECT * FROM NLS_DATABASE_PARAMETERS;
  SELECT * FROM V$NLS_PARAMETERS;
  38. 查询表空间信息?
  SELECT * FROM DBA_DATA_FILES;
  39. ORACLE的INTERAL用户要口令?
  修改 SQLNET.ORA
  SQLNET.AUTHENTICATION_SERVICES=(NTS)
  40. 出现JAVA.EXE的解决办法?
  一般是将ORACLEORAHOMEXIHTTPSERVER改成手工启动可以的,X是8或9
  41. 如何给表、列加注释?
  SQLcomment on table 表 is '表注释';
  注释已创建。
  SQLcomment on column 表.列 is '列注释';
  注释已创建。
  SQL select * from user_tab_comments where comments is not null;
  42. 如何查看各个表空间占用磁盘情况?
  SQL col tablespace format a20
  SQL select
  b.file_id
  文件ID号,
  b.tablespace_name
  表空间名,
  b.bytes
  字节数,
  (b.bytes-sum(nvl(a.bytes,0)))
  已使用,
  sum(nvl(a.bytes,0))
  剩余空间,
  sum(nvl(a.bytes,0))/(b.bytes)*100
  剩余百分比
  from dba_free_space a,dba_data_files b
  where a.file_id=b.file_id
  group by b.tablespace_name,b.file_id,b.bytes
  order by b.file_id
  43. 如把ORACLE设置为MTS或专用模式?
  #dispatchers="(PROTOCOL=TCP) (SERVICE=SIDXD"
  加上就是MTS,注释就是专用模式,SID是指你的实例名。
  44. 如何才能得知系统当前的SCN号 ?
  select max(ktuxescnw * power(2,32) + ktuxescnb) from x$ktuxe;
  45. 请问如何在ORACLE中取毫秒?
  9i之前不支持,9i开始有timestamp。
  9i可以用select systimestamp from dual;
  46. 如何在字符串里加回车?
  select 'Welcome to visit'||chr(10)||'www.CSDN.NET' from dual ;
  47. 中文是如何排序的?
  Oracle9i之前,中文是按照二进制编码进行排序的。
  在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值:
  SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
  SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
  SCHINESE_PINYIN_M 按照拼音排序
  48. Oracle8i中对象名可以用中文吗?
  可以
  49. 如何改变WIN中SQL*Plus启动选项?
  SQ

  101. 如何搜索出前N条记录?
  SELECT * FROM empLOYEE WHERE ROWNUM
  ORDER BY empno;
  102. 如何知道机器上的Oracle支持多少并发用户数?
  SQLconn internal ;
  SQLshow parameter processes ;
  103. db_block_size可以修改吗?
  一般不可以╋不建议这样做的。
  104. 如何统计两个表的记录总数?
  select (select count(id) from aa)+(select count(id) from bb) 总数 from dual;
  105. 怎样用Sql语句实现查找一列中第N大值?
  select * from
  (select t.*,dense_rank() over (order by sal) rank from employee)
  where rank = N;
  106. 如何在给现有的日期加上2年?(
  select add_months(sysdate,24) from dual;
  107. USED_UBLK为负值表示什么意思?
  It is "harmless"。
  108. Connect string是指什么?
  应该是tnsnames.ora中的服务名后面的内容
  109. 怎样扩大REDO LOG的大小?
  建立一个临时的redolog组,然后切换日志,删除以前的日志,建立新的日志。
  110. tablespace 是否不能大于4G?
  没有限制。
  111. 返回大于等于N的最小整数值?
  SELECT CEIL(N) FROM DUAL;
  112. 返回小于等于N的最小整数值?
  SELECT FLOOR(N) FROM DUAL;
  113. 返回当前月的最后一天?
  SELECT LAST_DAY(SYSDATE) FROM DUAL;
  114. 如何不同用户间数据导入?
  IMP SYSTEM/MANAGER FILE=AA.DMP FROMUSER=USER_OLD TOUSER=USER_NEW ROWS=Y INDEXES=Y ;
  115. 如何找数据库表的主键字段的名称?
  SQLSELECT * FROM user_constraints WHERE CONSTRAINT_TYPE='P' and table_name='TABLE_NAME';
  116. 两个结果集互加的函数?
  SQLSELECT * FROM BSEMPMS_OLD INTERSECT SELECT * FROM BSEMPMS_NEW;
  SQLSELECT * FROM BSEMPMS_OLD UNION SELECT * FROM BSEMPMS_NEW
  SQLSELECT * FROM BSEMPMS_OLD UNION ALL SELECT * FROM BSEMPMS_NEW;
  117. 两个结果集互减的函数?
  SQLSELECT * FROM BSEMPMS_OLD MINUS SELECT * FROM BSEMPMS_NEW;
  118. 如何配置Sequence?
  建sequence seq_custid
  create sequence seq_custid start 1 incrememt by 1;
  建表时:
  create table cust
  { cust_id smallint not null,
  ...}
  insert 时:
  insert into table cust
  values( seq_cust.nextval,...)
  日期的各部分的常用的的写法
  119. 取时间点的年份的写法:
  SELECT TO_CHAR(SYSDATE,'YYYY') FROM DUAL;
  120. 取时间点的月份的写法:
  SELECT TO_CHAR(SYSDATE,'MM') FROM DUAL;
  121. 取时间点的日的写法:
  SELECT TO_CHAR(SYSDATE,'DD') FROM DUAL;
  122. 取时间点的时的写法:
  SELECT TO_CHAR(SYSDATE,'HH24') FROM DUAL;
  123. 取时间点的分的写法:
  SELECT TO_CHAR(SYSDATE,'MI') FROM DUAL;
  124. 取时间点的秒的写法:
  SELECT TO_CHAR(SYSDATE,'SS') FROM DUAL;
  125. 取时间点的日期的写法:
  SELECT TRUNC(SYSDATE) FROM DUAL;
  126. 取时间点的时间的写法:
  SELECT TO_CHAR(SYSDATE,'HH24:MI:SS') FROM DUAL;
  127. 日期,时间形态变为字符形态:
  SELECT TO_CHAR(SYSDATE) FROM DUAL;
  128. 将字符串转换成日期或时间形态:
  SELECT TO_DATE('2003/08/01') FROM DUAL;
  129. 返回参数的星期几的写法:
  SELECT TO_CHAR(SYSDATE,'D') FROM DUAL;
  130. 返回参数一年中的第几天的写法:
  SELECT TO_CHAR(SYSDATE,'DDD') FROM DUAL;
  131. 返回午夜和参数中指定的时间值之间的秒数的写法:
  SELECT TO_CHAR(SYSDATE,'SSSSS') FROM DUAL;
  132. 返回参数中一年的第几周的写法:
  SELECT TO_CHAR(SYSDATE,'WW') FROM DUAL;
  虚拟字段
  133. CURRVAL 和 nextval
  为表创建序列
  CREATE SEQUENCE EMPSEQ ... ;
  SELECT empseq.currval FROM DUAL ;
  自动插入序列的数值
  INSERT INTO emp
  VALUES (empseq.nextval, 'LEWIS', 'CLERK',
  7902, SYSDATE, 1200, NULL, 20) ;
  134. ROWNUM
  按设定排序的行的序号
  SELECT * FROM emp WHERE ROWNUM
  135. ROWID
  返回行的物理地址
  SELECT ROWID, ename FROM emp WHERE deptno = 20 ;
  136. 将N秒转换为时分秒格式?
  set serverout on
  declare
  N number := 1000000;
  ret varchar2(100);
  begin
  ret := trunc(n/3600) || '小时' || to_char(to_date(mod(n,3600),'sssss'),'fmmi"分 "ss"秒"') ;
  dbms_output.put_line(ret);
  end;
  137. 如何查询做比较大的排序的进程?
  SELECT b.tablespace, b.segfile#, b.segblk#, b.blocks, a.sid, a.serial#, a.username, a.osuser, a.status
  FROM v$session a,v$sort_usage b
  WHERE a.saddr = b.session_addr
  ORDER BY b.tablespace, b.segfile#, b.segblk#, b.blocks ;
  138. 如何查询做比较大的排序的进程的SQL语句?
  select /*+ ORDERED */ sql_text from v$sqltext a
  where a.hash_value = (
  select sql_hash_value from v$session b
  where b.sid = &sid and b.serial# = &serial)
  order by piece asc ;
  139. 如何查找重复记录?
  SELECT * FROM TABLE_NAME
  WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D
  WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);
  140. 如何删除重复记录?
  DELETE FROM TABLE_NAME
  WHERE ROWID!=(SELECT MAX(ROWID) FROM TABLE_NAME D
  WHERE TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);
  141. 如何快速编译所有视图?
  SQL SPOOL VIEW1.SQL
  SQL SELECT ‘ALTER VIEW ‘||TNAME||’
  COMPILE;’ FROM TAB;
  SQL SPOOL OFF
  然后执行VIEW1.SQL即可。
  SQL @VIEW1.SQL;
  142. ORA-01555 SNAPSHOT TOO OLD的解决办法
  增加MINEXTENTS的值,增加区的大小,设置一个高的OPTIMAL值。
  143. 事务要求的回滚段空间不够,表现为表空间用满(ORA-01560错误),回滚段扩展到达参数 MAXEXTENTS的值(ORA-01628)的解决办法。
  向回滚段表空间添加文件或使已有的文件变大;增加MAXEXTENTS的值。
  144. 如何加密ORACLE的存储过程?
  下列存储过程内容放在AA.SQL文件中
  create or replace procedure testCCB(i in number) as
  begin
  dbms_output.put_line('输入参数是'||to_char(i));
  end;
  SQLwrap iname=a.sql;
  PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001
  Copyright (c) Oracle Corporation 1993, 2000. All Rights Reserved。
  Processing AA.sql to AA.plb
  运行AA.plb
  SQL @AA.plb ;
  145. 如何监控事例的等待?
  select event,sum(decode(wait_Time,0,0,1)) "Prev",
  sum(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot"
  from v$session_Wait
  group by event order by 4;
  146. 如何回滚段的争用情况?
  select name, waits, gets, waits/gets "Ratio"
  from v$rollstat C, v$rollname D
  where C.usn = D.usn;
  147. 如何监控表空间的 I/O 比例?
  select B.tablespace_name name, B.file_name "file", A.phyrds pyr, A.phyblkrd pbr, A.phywrts pyw, A.phyblkwrt pbw
  from v$filestat A, dba_data_files B
  where A.file# = B.file_id
  order by B.tablespace_name;
  148. 如何监控文件系统的 I/O 比例?
  select substr(C.file#,1,2) "#", substr(C.name,1,30) "Name", C.status, C.bytes, D.phyrds, D.phywrts
  from v$datafile C, v$filestat D
  where C.file# = D.file#;
  149. 如何在某个用户下找所有的索引?
  select user_indexes.table_name, user_indexes.index_name,uniqueness, column_name
  from user_ind_columns, user_indexes
  where user_ind_columns.index_name = user_indexes.index_name
  and user_ind_columns.table_name = user_indexes.table_name
  order by user_indexes.table_type, user_indexe
  201. /*+NOCACHE(TABLE)*/
  当进行全表扫描时,CACHE提示能够将表的检索块放置在缓冲区缓存中最近最少列表LRU的最近使用端
  例如:
  SELECT /*+FULL(BSEMPMS) NOCAHE(BSEMPMS) */ EMP_NAM FROM BSEMPMS;
  202. /*+APPEND*/
  直接插入到表的最后,可以提高速度。
  insert /*+append*/ into test1 select * from test4 ;
  203. /*+NOAPPEND*/
  通过在插入语句生存期内停止并行模式来启动常规插入。
  insert /*+noappend*/ into test1 select * from test4 ;
  ORACLE内部函数
  204. 如何得到字符串的第一个字符的ASCII值?
  ASCII(CHAR)
  SELECT ASCII('ABCDE') FROM DUAL;
  结果: 65
  205. 如何得到数值N指定的字符?
  CHR(N)
  SELECT CHR(68) FROM DUAL;
  结果: D
  206. 如何连接两个字符串?
  CONCAT(CHAR1,CHAR2)
  SELECT CONCAT('ABC','DEFGH') FROM DUAL;
  结果: 'ABCDEFGH'
  207. 如何将列中的数值代替为字符串?
  DECODE(CHAR,N1,CHAR1,N2,CHAR2...)
  SELECT DECODE(DAY,1,'SUN',2,'MON') FROM DUAL;
  208. INITCAP(CHAR)
  将字符串CHAR的第一个字符为大写,其余为小写。
  SELECT INITCAP('ABCDE') FROM DUAL;
  209. LENGTH(CHAR)
  取一字符串CHAR的长度。
  SELECT LENGTH('ABCDE') FROM DUAL;
  210. LOWER(CHAR)
  将字符串CHAR全部变为小写。
  SELECT LOWER('ABCDE') FROM DUAL;
  211. LPAD(CHAR1,N,CHAR2)
  用字符串CHAR2包括的字符左填CHAR1,使其长度为N。
  SELECT LPAD('ABCDEFG',10'123') FROM DUAL;
  结果: '123ABCDEFG'
  212. LTRIM(CHAR,SET)
  从字符串CHAR的左边移去字符串SET中的字符,直到第一个不是SET中的字符为止。
  SELECT ('CDEFG','CD') FROM DUAL;
  结果: 'EFG'
  213. NLS_INITCAP(CHAR)
  取字符CHAR的第一个字符大写,其余字符为小写。
  SELECT NLS_INITCAP('ABCDE') FROM DUAL;
  214. NLS_LOWER(CHAR)
  将字符串CHAR包括的字符全部小写。
  SELECT NLS_LOWER('AAAA') FROM DUAL;
  215. NLS_UPPER(CHAR)
  将字符串CHAR包括的字符全部大写。
  SELECT NLS_UPPER('AAAA') FROM DUAL;
  216. REPLACE(CHAR1,CHAR2,CHAR3)
  用字符串CHAR3代替每一个列值为CHAR2的列,其结果放在CHAR1中。
  SELECT REPLACE(EMP_NO,'123','456') FROM DUAL;
  217. RPAD(CHAR1,N,CHAR2)
  用字符串CHAR2右填字符串CHAR1,使其长度为N。
  SELECT RPAD('234',8,'0') FROM DUAL;
  218. RTRIM(CHAR,SET)
  移去字符串CHAR右边的字符串SET中的字符,直到最后一个不是SET中的字符为止。
  SELECT RTRIM('ABCDE','DE') FROM DUAL;
  219. SUBSTR(CHAR,M,N)
  得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为一个字符的。
  SELECT SUBSTR('ABCDE',2,3) FROM DUAL;
  220. SUBSTRB(CHAR,M,N)
  得到字符串CHAR从M处开始的N个字符. 双字节字符,一个汉字为二个字符的。
  SELECT SUBSTRB('ABCDE',2,3) FROM DUAL;
  221. TRANSLATE(CHAR1,CHAR2,CHAR3)
  将CHAR1中的CHAR2的部分用CHAR3代替。
  SELECT TRANSLATE('ABCDEFGH','DE','MN') FROM DUAL;
  222. UPPER(CHAR)
  将字符串CHAR全部为大写。
  223. ADD_MONTHS(D,N)
  将N个月增加到D日期。
  SELECT ADD_MONTHS(SYSDATE,5) FROM DUAL;
  224. LAST_DAY(D)
  得到包含D日期的月份的最后的一天的日期。
  SELECT LAST_DAY(SYSDATE) FROM DUAL;
  225. MONTH_BETWEEN(D1,D2)
  得到两个日期之间的月数。
  SELECT MONTH_BETWEEN(D1,D2) FROM DUAL;
  226. NEXT_DAY(D,CHAR)
  得到比日期D晚的由CHAR命名的第一个周日的日期。
  SELECT NEXT_DAY(TO_DATE('2003/09/20'),'SATDAY') FROM DUAL;
  227. ROUNT(D,FMT)
  得到按指定的模式FMT舍入到的最进的日期。
  SELECT ROUNT('2003/09/20',MONTH) FROM DUAL;
  228. SYSDATE
  得到当前系统的日期和时间。
  SELECT SYSDATE FROM DUAL;
  229. TO_CHAR(D,FMT)
  将日期D转换为FMT的字符串。
  SELECT TO_CHAR(SYSDATE,'YYYY/MM/DD') FROM DUAL;
  230. TO_DATE(CHAR,FMT)
  将字符串CHAR按FMT的格式转换为日期。
  SELECT TO_DATE('2003/09/20','YYYY/MM/DD') FROM DUAL;
  231. ABS(N)
  得到N的绝对值。
  SELECT ABS(-6) FROM DUAL;
  232. CEIL(N)
  得到大于或等于N的最大整数。
  SELECT CEIL(5.6) FROM DUAL;
  233. COS(N)
  得到N的余弦值。
  SELECT COS(1) FROM DUAL;
  234. SIN(N)
  得到N的正弦值。
  SELECT SIN(1) FROM DUAL;
  235. COSH(N)
  得到N的双曲余弦值。
  SELECT COSH(1) FROM DUAL;
  236. EXP(N)
  得到N的E的N次幂。
  SELECT EXP(1) FROM DUAL;
  237. FLOOR(N)
  得到小于或等于N的最小整数。
  SELECT FLOOR(5.6) FROM DUAL;
  238. LN(N)
  得到N的自然对数。
  SELECT LN(1) FROM DUAL;
  239. LOG(M,N)
  得到以M为底N的对数。
  SELECT LOG(2,8) FROM DUAL;
  240. MOD(M,N)
  得到M除以N的余数。
  SELECT MOD(100,7) FROM DUAL;
  241. POWER(M,N)
  得到M的N幂。
  SELECT POWER(4,3) FROM DUAL;
  242. ROUND(N,M)
  将N舍入到小数点后M位。
  SELECT (78.87653,2) FROM DUAL;
  243. SIGN(N)
  当N
  当N0时,得到1;
  当N=0时,得到0;
  SELECT SIGN(99) FROM DUAL;
  244. SINH(N)
  得到N的双曲正弦值。
  SELECT SINH(1) FROM DUAL;
  245. SORT(N)
  得到N的平方根,N=0
  SELECT SORT(9) FROM DUAL;
  246. TAN(N)
  得到N的正切值。
  SELECT TAN(0) FROM DUAL;
  247. TANH(N)
  得到N的双曲正切值。
  SELECT TANH(0) FROM DUAL;
  248. TRUNC(N,M)
  得到在M位截断的N的值。
  SELECT TRUNC(7.7788,2) FROM DUAL;
  249. COUNT()
  计算满足条件的记录数。
  SELECT COUNT(*) FROM TABLE1 WHERE COL1='AAA';
  250. MAX()
  对指定的列求最大值。
  SELECT MAX(COL1) FROM TABLE1;
  251. MIN()
  对指定的列求最小值。
  SELECT MIN(COL1) FROM TABLE1;
  252. AVG()
  对指定的列求平均值。
  SELECT AVG(COL1) FROM TABLE1;
  253. SUM()
  计算列的和。
  SELECT SUM(COL1) FROM DUAL;
  254. TO_NUMBER(CHAR)
  将字符转换为数值。
  SELECT TO_NUMBER('999') FROM DUAL;
  255. CHARTOROWID(CHAR)
  将包含外部语法ROWID的CHAR或VARCHAR2数值转换为内部的二进制语法,参数CHAR必须是包含外部语法的ROWID的18字符的字符串。
  SELECT NAME FROM BSEMPMS WHERE ROWID=CHARTOROWID('AAAAfZAABAAACp8AAO');
  NAME : LEIXUE
  256. CONVERT(CHAR,DEST_CHAR_SET,SOURCE_CHAR_SET)
  CONVERT将字符串CHAR中的字符从SOURCE_CHAR_SET标识的字符集转换为由DEST_CHAR_SET标识的字符集
  SELECT CONVERT('GroB','US7ASCII','WE8HP') 'CONVERSION' FROM PUBS;
  CONVERSION: Gross
  257. HEXTORAW(CHAR)
  将包含十六进制的CHAR转换为一个RAW数值。
  INSERT INTO BSEMPMS(RAW_COLUMN) SELECT HEXTORAW('7D') FROM TEST;
  258. RAWTOHEX(RAW)
  将RAW数值转换为一个包含十六进制的CHAR值。
  SELECT RAWTOHEX(RAW_COLUMN) 'CONVERSION' FROM BSEMPMS;
  CONVERSION: 7D
  259. ROWIDTOCHAR(ROWID)
  将一个ROWID数值转换为VARCHAR2数据类型。
  SELECT ROWID FROM BSEMPMS WHERE ROWIDTOCHAR(ROWID) LIKE '%BR1AAB%';
  260. TO_MULTI_BYTE(CHAR)
  将CHAR中的单字节转换为等价的多字节字符。

  301. V$BUFFER_POOL
  显示实例缓冲池的信息。
  302. V$BUFFER_POOL_STATISTICS
  显示实例缓冲池的信息。
  303. V$CACHE
  包含当前实例的SGA中的每一个块的头部信息。
  304. V$CACHE_LOCK
  包含当前实例的SGA中的每一个块的头部信息. 和V$CACHE非常相似,
  除特使平台锁管理器标识符号不同外。
  305. V$CACHE_TRANSFER
  除了只显示那些被探查了至少一次的块的信息外,和V$CACHE功能相同。
  306. V$CIRCUIT
  包含关于虚电路的信息,是用户通过调度程序和服务器到数据库的所有连接。
  307. V$CLASS_PING
  显示每一个块类中被探查块的数目。
  308. V$COMPATIBILITY
  显示数据库实例使用的特征,可以阻止数据库回到早期的版本中去。
  309. V$COMPATSEG
  显示数据库实例使用的永久性特征,可以阻止数据库回到早期的版本中去。
  310. V$CONTEXT
  列出当前对话的设置属性。
  311. V$CONTROLFILE
  列出控制文件的名称。
  312. V$CONTROLFILE_RECORD_SECTION
  显示控制文件记录部分的信息。
  313. V$COPY_CORRUPTION
  显示控制文件中数据文件损坏的信息。
  314. V$CR_BLOCK_SERVER
  显示用在缓存中块服务器后台进程上的统计信息。
  315. V$DATABASE
  包含控制文件中数据库的信息。
  316. V$DATAFILE
  包含控制文件中数据库文件的信息。
  317. V$DATAFILE_COPY
  包含控制文件中数据库文件副本的信息。
  318. V$DATAFILE_HEADER
  显示数据文件头部的数据文件信息。
  319. V$DB_CACHE_ADVICE
  根据缓存的大小估计出物理读的数量。
  320. V$DB_OBJECT_CACHE
  缓存在库缓存中的数据库对象。
  321. V$DB_PIPES
  显示实例中的共享池当前描绘的管道。
  322. V$DBFILE
  列出组成数据库的所有数据文件。
  323. V$DBLINK
  查询会话所打开的所有数据库连接。
  324. V$DELETED_OBJECT
  显示控制文件中被删除归档日志。
  325. V$DISPATCHER
  提供调度进程的信息。
  326. V$DISPATCHER_RATE
  为调度进程提供优质提供速率统计量。
  327. V$DLM_ALL_LOCKS
  列出当前所有锁的信息。
  328. V$DLM_CONVERT_LOCAL
  本地锁转换操作所消耗的时间。
  329. V$DLM_CONVERT_REMOTE
  远程锁转换操作所消耗的时间。
  330. V$DLM_LATCH
  它是过时的,参见V$LATCH
  331. V$DLM_LOCKS
  这些是锁管理器已知的被阻塞或阻塞其它对象的锁信息。
  332. V$DLM_MISC
  显示多种DLM统计量。
  333. V$DLM_RESS
  显示当前锁管理器已知的全部资源的信息。
  334. V$ENABLEDPRIVE
  显示被授予的特权。
  335. V$ENQUEUE_LOCK
  显示排队对象所拥有的全部锁。
  336. V$EVENT_NAME
  包含等待事件的信息。
  337. V$EXECUTION
  显示并行执行中的信息。
  338. V$FALSE_PING
  可能得到探查失败的缓冲区。
  339. V$FAST_START_SERVERS
  执行并行操作事务恢复的所有从属操作的信息。
  340. V$FAST_START_TRANSACTIONS
  恢复中的事务进展信息。
  341. V$FILE_CACHE_TRANSFER
  显示每个数据文件中探查的块的数量。
  342. V$FILE_PING
  显示每个数据文件被探查的块数目。
  343. V$FILESTAT
  包含文件关于读/写统计量信息。
  344. V$FIXED_TABLE
  显示数据库中所有动态性能表和视图及导出表。
  345. V$FIXED_VIEW_DEFINITION
  显示所有固定视图的定义。
  346. V$GC_ELEMENTS_WITH_COLLISIONS
  可以找到保护多缓存的锁。
  347. V$GES_BLOCKING_ENQUEUE
  这些是锁管理器已知的被阻塞或阻塞其它对象的锁信息。
  348. V$GES_CONVERT_LOCAL
  本地锁转换操作
  349. V$GES_CONVERT_REMOTE
  远程锁转换操作所消耗的时间。
  350. V$GES_ENQUEUE
  显示当前锁管理员知道的所有的锁。
  351. V$GES_LATCH
  参见V$LATCH
  352. V$GES_RESOURCE
  显示当前锁管理器已知的全部资源的信息。
  353. V$GES_STATISTICS
  显示多种DLM统计量。
  354. V$GLOBAL_BLOCKED_LOCKS
  显示全局块锁。
  355. V$GLOBAL_TRANSACTION
  显示当前激活的全局事务的信息。
  356. V$HS_AGENT
  标识当前运行在一个给定的主机上的HS代理的集合。
  357. V$HS_SESSION
  ORACLE服务器打开的HS会话集。
  358. V$INDEXED_FIXED_COLUMN
  显示建立索引的动态性能表中的列(X$表)。
  359. V$INSTANCE
  显示当前实例的状态。
  360. V$INSTANCE_RECOVERY
  用来监视执行用户指定恢复读次数的限制机制。
  361. V$LATCH
  为非双亲简易锁列出统计量。
  362. V$LATCH_CHILDREN
  关于子简易锁的统计量。
  363. V$LATCH_MISSES
  试图获得一个简易锁失败的统计量。
  364. V$LATCH_PARENT
  包含关于双亲简易锁的统计量。
  365. V$LATCHHOLDER
  当前简易锁持有者的信息。
  366. V$LATCHNAME
  包含关于显示在V$LATCH中的简易锁的解码简易锁名字的信息。
  367. V$LIBRARYCACHE
  关于高速缓存性能和活动的统计量。
  368. V$LICENSE
  许可证限制的信息。
  369. V$LOADCSTAT
  包含在一个直接装载执行过程中所编译的SQL*LOADER统计量。
  370. V$LOCK
  当前ORACLE所持有的锁。
  371. V$LOCK_ACTIVITY
  显示当前实例的DLM锁操作活动。
  372. V$LOCK_ELEMENT
  每一个被缓存使用的PCM锁在V$LOCK_ELEMENTS中都有一个条目。
  373. V$LOCKED_OBJECT
  列出每个事务所获得的全部锁。
  374. V$LOCK_WITH_COLLISIONS
  可以查询出保护多缓冲区的锁。
  375. V$LOG
  控制文件中日志文件的信息。
  376. V$LOG_HISTORY
  控制文件中日志文件的历史信息。
  377. V$LOGFILE
  包含重做日志文件的信息。
  378. V$LOGHIST
  控制文件中日志文件的日志历史信息。
  379. V$LOGMNR_CONTENTS
  日志历史信息。
  380. V$LOGMNR_DICTIONARY
  日志历史信息。
  381. V$LOGMNR_LOGS
  日志信息。
  382. V$LOGMNR_PARAMETERS
  日志信息。
  383. V$MTS
  包含调节多线程的服务器的信息。
  384. V$MYSTAT
  当前会话的统计量。
  385. V$NLS_PARAMETERS
  当前NLS参数信息。
  386. V$NLS_VALID_VALUES
  列出所有NLS参数的有效值。
  387. V$OBJECT_DEPENDENCY
  能够通过当前装载在共享池中的包,过程或游标来决定依赖哪一个对象。
  388. V$OBJECT_USAGE
  来监视索引的使用。
  389. V$OBSOLETE_PARAMETER
  列出陈旧的参数。
  390. V$OFFINE_RANGE
  显示控制文件中数据文件的脱机信息。
  391. V$OPEN_CURSOR
  列出每一个会话当前打开的和解析的游标。
  392. V$OPTION
  列出ORACLE服务安装的状况。
  393. V$PARALLEL_DEGREE_LIMIT_MTH
  显示所有有效的并行度限制资源分配的方法。
  394. V$PARAMETER
  列出关于初始化参数的信息。
  395. V$PARAMETER2
  列出了当前影响会话的参数和参数值。
  396. V$PGASTAT
  列出ORACLE内存使用统计。
  397. V$PING
  与V$CACHE一样。
  398. V$PQ_SESSTAT
  列出并行查询会话的统计信息。
  399. V$PQ_SLAVE
  一个实例上每个活动并行执行服务器的统计量。
  400. V$PQ_SYSSTAT
  列出并行查询的系统的统计量。
  401. V$PQ_TQSTAT
  包含并行执行操作上的统计量.帮助在一个查询中测定不平衡的问题。
  402. V$PROCESS
  包含关于当前活动进程的信息。
  403. V$PROXY_ARCHIVEDLOG
  包含归档日志备份文件的描述信息,这些备份文件带有一个称为PROXY副本的新特征。
  404. V$PROXY_DATAFILE
  包含数据文件和控制文件备份的描述信息,这些备份文件带有一个称为PROXY副本的新特征。
  405. V$PWFILE_USERS
  列出被授予SYSDBA和SYSOPER特权的用户。
  406. V$PX_PROCESS
  包含正在运行并行操作的会话的信息。
  407. V$PX_PROCESS_SYSSTAT
  包含正在运行并行操作的会话的信息。
  408. V$PX_SESSION
  包含正在运行并行操作的会话的信息。
  409. V$PX_SESSTAT
  包含正在运行并行操作的会话的信息。
  410. V$QUEUE
  包含多线程消息队列的信息。
  411. V$QUEUEING_MTH
  显示所有可用的查询资源分配方法。
  412. V$RECOVER_FILE
  显示需要介质恢复的文件状态。
  413. V$RECOVERY_FILE_STATUS
  包含对每个恢复命令的每一数据文件的一行信息。
  414. V$RECOVERY_LOG
  列出需要完成介质恢复的归档日志的信息.这个信息来自V$LOG_HISTORY
  415. V$RECOVERY_PROCESS
  能够用来跟踪数据库恢复操作,以便他们不会被终止执行。
  也用来估算进程中完成这个操作所需的时间。
  416. V$RECOVERY_STATUS
  包含当前恢复进程的统计量。
  417. V$REQDIST
  列出MTS调度程序请求次数的直方图的统计量。
  418. V$RESERVED_WORDS
  给出PL/SQL编译器所使用的关键字的列表。
  419. V$RESOURCE
  包含资源名和地址信息。
  420. V$RESOURCE_LIMIT
  显示系统资源的全局资源使用的信息。
  421. V$ROLLNAME
  列出所有联机回滚段的信息。
  422. V$ROLLSTAT
  包含回滚段的统计量。
  423. V$ROWCACHE
  显示活动数据字典的统计量。
  424. V$ROWCACHE_PARENT
  显示数据字典中所有双亲对象的信息。
  425. V$ROWCACHE_SUBORDINATE
  显示数据字典中从属对象的信息。
  426. V$RSRC_CONSUMER_GROUP
  显示与当前活动资源消费者用户组相关联的数据。
  427. V$RSRC_CONSUMER_GROUP_CPU_MTH
  为资源消费者用户组显示所有可用的资源的分配方法。
  428. V$RSRC_PLAN
  显示当前所有活动资源方案的名称。
  429. V$RSRC_PLAN_CPU_MTH
  显示所有用于资源方案的可用CPU资源分配方法。
  430. V$SESS_IO
  为每个用户会话列出I/O统计。
  431. V$SESSION
  列出当前每一个会话的会话信息。
  432. V$SESSION_CONNECT_INFO
  显示当前会话的网络连接的信息。
  433. V$SESSION_CURSOR_CACHE
  显示当前会话的游标用法的信息。
  434. V$SESSION_EVENT
  列出一个会话在等待一个事件的信息。
  435. V$SESSION_LONGOPS
  显示一个长时间运行操作的状态。
  436. V$SESSION_OBJECT_CACHE
  显示本地服务器上当前用户对话的对象高速缓存的统计量。
  437. V$SESSION_WAIT
  列出正在等待的活动会话的资源或事件。
  438. V$SESSTAT
  列出用户会话统计量。
  439. V$SGA
  包含系统全局区的总统计量。
  440. V$SGASTAT
  包含系统全局区的详细信息。
  441. V$SHARED_POOL_RESERVED
  列出能帮助你调节共享池中保留池和空间的统计量。
  442. V$SHARED_SERVER
  包含共享服务器进程的信息。
  443. V$SHARED_SERVER_MONITOR
  包含调试共享服务器进程的信息。
  444. V$SORT_SEGMENT
  包含一个给定实例中每一个排序段的信息。
  445. V$SPPARAMETER
  列出SPFILE的内容。
  446. V$SQL
  列出SQL共享区的统计量。
  447. V$SQL_BIND_DATA
  如果数据在服务器中可用,它将对查询这个视图的会话所拥有的每个游标中的每一个不同的连接变量,显示客户端发送的实际连接数据。
  448. V$SQL_BIND_METADATA
  对查询这个视图的会话所拥有的每个游标中的每一个不同的连接变量,显示客户端提供的连接元数据。
  449. V$SQL_CURSOR
  显示与查询这个视图的会话相关的每一个游标的DEBUG信息。
  450. V$SQL_PLAN
  包含装载到库缓存中每个子游标的执行计划信息。
  451. V$SQL_SHARED_CURSOR
  为什么一个特定的子游标没有与存在的子查询的共享的解释。
  452. V$SQL_SHARED_MEMEORY
  关于共享内存快照的游标的信息。
  453. V$SQL_REDIRECTION
  标识复位向的SQL语句。
  454. V$SQL_WORKAREA
  显示被SQL游标使用的工作区信息。
  455. V$SQL_WORKAREA_ACTIVE
  包含当前由系统分配的工作区的?间信息。
  456. V$SQLAREA
  共享SQL的统计量。
  457. V$SQLTEXT
  包含SGA中属于共享SQL游标的SQL语句文本。
  458. V$SQLTEXT_WITH_NEWLINES
  不能用空格代替新行制表符外,和V$SQLTEXT功能一样。
  459. V$STATNAME
  显示V$SESSTAT和V$SYSTAT表中的统计量的译码统计名字。
  460. V$SUBCACHE
  显示当前装载于库高速缓存中的从属高速缓存的信息。
  461. V$SYSSTAT
  列出系统统计量。
  462. V$SYSTEM_CURSOR_CACHE
  系统范围的信息。
  463. V$SYSTEM_EVENT
  包含等待一个事件的全部信息。
  464. V$SYSTEM_PARAMETER
  包含系统参数信息。
  465. V$SYSTEM_PARAMETER2
  ORACLE实例中当前影响的参数和参数的值。
  466. V$TABLESPACE
  控制文件中表空间的信息。
  467. V$TEMP_CACHE_TRANSFER
  显示每个数据文件中探查块的数量。
  468. V$TEMP_EXTENT_MAP
  显示所有临时表空间的每一个单元的状态信息。
  469. V$TEMP_EXTENT_POOL
  显示被一个给定实例使用的临时空间缓存的状态。
  470. V$TEMP_PING
  显示每一个数据文件探查的块数。
  471. V$TEMP_SPACE_HEADER
  显示每一个临时表空间中每一个文件的聚集信息,涉及每个空间首部中当前使用多少空间和有多少自由空间。
  472. V$TEMPFILE
  显示临时文件的信息。
  473. V$TEMPORARY_LOBS
  显示临时的LOB。
  474. V$TEMPSTAT
  包含文件读/写的统计信息。
  475. V$THREAD
  包含控制文件中的线程信息。
  476. V$TIMER
  列出以1%秒计的流逝时间。
  477. V$TIMEZONE_NAMES
  列出合法的时区名称。
  478. V$TRANSACTION
  列出系统中的活动事务。
  479. V$TRANSACTION_ENQUEUE
  显示事务状态对象所拥有的锁。
  480. V$TYPE_SIZE
  列出不同数据库组件的大小,以便用来估算数据块的容量大小。
  481. V$UNDOSTAT
  显示一个历史统计数据来显示系统工作的如何。
  482. V$VERSION
  列出ORACLE服务器中核心库组件的版本号。
  483. V$VPD_POLICY
  列出与当前在库缓存中的游标相关的所有安全策略。
  484. V$WAITSTAT
  列出块竞争统计量
  9I管理的数据字典DBA视图
  485. DBA_2PC_NEIGHBORS
  包含未决事务的引入或流出的连接信息。
  486. DBA_ALL_TABLES
  显示数据库中所有表的描述。
  487. DBA_APPLICATION_ROLES
  所有的具有函数定义的验证策略的角色。
  488. DBA_ASSOCIATIONS
  显示用户定义的统计信息。
  489. DBA_AUDIT_EXISTS
  列出AUDIT NOT EXISTS和AUDIT EXISTS产生的审计跟踪。
  490. DBA_AUDIT_OBJECT
  系统中所有对象的审计跟踪记录。
  491. DBA_AUDIT_SESSION
  列出关于CONNECT和DISCONNECT的所有审计跟踪信息。
  492. DBA_AUDIT_STATEMENT
  列出关于GRANT,REVOKE,AUDIT,NOAUDIT,ALTER SYSTEM语句的审计跟踪信息。
  493. DBA_AUDIT_TRAIL
  列出所有的审计跟踪条目。
  494. DBA_BLOCKERS
  列出正有人等待一个会话持有的锁的所有会话,但并非它们自己在等待一个锁。
  495. DBA_BASE_TABLE_MVIEWS
  描述数据库中所有的物化视图。
  496. DBA_CATALOG
  列出所有数据库标,视图,同义词和序列。
  497. DBA_CLU_COLUMNS
  列出表列到聚集列的映射。
  498. DBA_CLUSTER_HASH_EXPRESSIONS
  列出所有聚集的散列HASH函数。
  499. DBA_CLUSTERS
  包含数据库中所有聚集的描述。
  500. DBA_COL_COMMENTS
  所有表和视图的列的注解。