摘要:原文地址:http://docs.oracle.com/cd/E11882_01/server.112/e25494/tables.htm#ADMIN01511 http://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_9012
阅读全文
摘要:原文地址:http://www.oracle.com/technetwork/issue-archive/2009/09-jan/o19asktom-086775.html 动态采样是为了解决当硬解析时对没有统计信息的表抽样收集统计信息,让优化器走出合适的执行计划。 从oracle9.2开始,动态采
阅读全文
摘要:原文地址:https://oracle-base.com/articles/misc/efficient-function-calls-from-sql http://www.oracle.com/technetwork/issue-archive/2011/11-sep/o51asktom-453
阅读全文
摘要:官方文档:http://docs.oracle.com/cd/E11882_01/server.112/e41573/technique.htm#PFGRF94138 1. ADDM 会给出优化建议 2. 如何寻找系统瓶颈: Step1. 单用户或者系统负载很低的情况下,系统的响应时间是否可以接受?
阅读全文
摘要:官方文档:http://docs.oracle.com/cd/E11882_01/appdev.112/e25519/tuning.htm#LNPLS012 1. plsql_optimizer_level 范围值:0~3,11g中默认值为2,通常来说这个参数设置的越大,PLSQL引擎会提供越好的性
阅读全文
摘要:1. nvl(expr1,expr2) 如果expr为空则返回expr2。如果expr2为表达式的话,不论expr1是否为空,expr2总是会执行,coalesce不会 select nvl(e.commission_pct,11) from employees e;--如果奖金为空,则返回11 2
阅读全文
摘要:1. replace,translate --translate 字符级别的替换 --replace 字符串级别的替换 select replace('abaabbb','ab','c') from dual;--cacbb select translate('aaabbb','ab','ce')
阅读全文
摘要:1. ntile --ntile select e.employee_id, e.last_name, e.salary, e.department_id, ntile(10) over(order by e.salary desc) bucket --根据工资排序后,员工分配到10个组里,可以理解
阅读全文
摘要:常用分析函数: 1. first,last --假设a := min(奖金) keep(dense_rank first order by 工资) --假设工资最少为1000,a为在工资等于1000的员工取最小的奖金 --假设b := min(奖金) keep(dense_rank last ord
阅读全文
摘要:1. oracle中日期转换为yyyy年mm月dd日的形式 select to_char(sysdate,'"年"mm"月"dd"日"') from dual; 2. oracle分析函数语法 2.1 ORDER BY select e.last_name, e.manager_id, e.sala
阅读全文
摘要:1. WITH AS 示例 with e as (select * from employees), d as (select * from departments) select * from e,d where e.department_id = d.department_id and d.de
阅读全文
摘要:1.scn查询 方法1:select dbms_flashback.get_system_change_number from dual; 方法2:select current_scn from v$database
阅读全文
摘要:1.select trunc(sysdate) from dual 2.select trunc(sysdate, 'mm') from dual 3.select trunc(sysdate,'yy') from dual 4.select trunc(sysdate,'dd') from dua...
阅读全文
摘要:1.查询当前用户的权限: select * from session_privs2.查询最新的执行计划select * from table(dbms_xplan.display)3.查看用户权限select * from dba_sys_privs;select * from user_sys_p...
阅读全文
摘要:项目需求:每天清空历史数据。要用到oracle的定时任务,在网上搜了下,案例很多。都是代码都是从网上大神那搞的,做下记录,以后没准还有用呢。variable job number; begin dbms_job.submit(:job, 'test_job;', sysdate, 'sysdate+1'); end; 变量job保存任务编号,用于任务执行和修改,删除等操作。test_job为需要定期执行的存储过程。+1表示每隔一天执行存储过程一次,时间可以相应修改。任务建立,然后执行: begin dbms_job.run(:job); end;这样就可以了,可
阅读全文
摘要:删除表空间时报错ORA-29857: 表空间中存在域索引和/或次级对象,查了一下,可能是因为是某个用户默认表空间的原因。所以需要先删除用户,然后再执行表空间的删除操作。在sqlplus执行查询语句select username,default_tablespace from dba_users发现确实有用户的默认表空间是我要删除的表空间,然后drop user 用户名 cascade ;然后重新执行表空间的删除操作drop tablespace 表空间名 including contents and datafiles cascade constraints.欧了
阅读全文
摘要:今天开启数据库报“ORA-01034 - Oracle not available”和“ORA-27101 - shared memory realm does not exist”解决方法如下set oracle_sid=实例名sqlplus /nologconnect 用户名/密码 as sysdbastartup数据库实例成功启动中途还报错无法写入日志文件的错误,在我的电脑,管理,事件管理器中清空应用程序的事件管理器即可。
阅读全文