
Oracle
john320
这个作者很懒,什么都没留下…
展开
-
Oracle语句优化53个规则详解(1)
Oracle sql 性能优化调整 1. 选用适合的ORACLE优化器 ORACLE的优化器共有3种:a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRS转载 2012-03-19 14:25:58 · 459 阅读 · 0 评论 -
start with connect by prior子句实现递归查询
查询角色ID为1的所有子级角色:select * from T_SYS_ROLE t start with t.ROLE_PARENTID = 1 connect by prior t.ROLE_ID = t.ROLE_PARENTID转载 2016-01-07 16:57:12 · 448 阅读 · 0 评论 -
oracle数据库的一个表中,怎么设置字段的默认值
如果表已经存在,用如下方法设置默认值。alter table 表名 modify 字段名 default 默认值;如test表中设置age字段为30,可用如下语句:alter table test modify age default 30;测试:添加一条记录:insert into test (name) values ('du小智');结果:这里转载 2016-01-22 17:48:03 · 57533 阅读 · 1 评论 -
WIN7 64位操作系统下成功安装Oracle10g(32位)
在win7系统下安装Oracle ,有以下几点需要注意: Java代码 1.需用administrator 用户下安装。 2.因为oracle 10g暂时没有与win7兼容的版本,我们可以通过对安装软件中某些文件的修改达到安装的目地。 a)打开“\Oracle 10G \stage\prereq\db”路径,找到refhost.xml文件,打开,向其中添加如下代码并保存转载 2015-01-05 11:09:03 · 5434 阅读 · 0 评论 -
实现Oracle 10g 每天自动备份数据
一、备份脚本命令:@ECHO OFFif not exist d:\ora_dmp md d:\ora_dmpSET BACKPATH=d:\ora_dmpECHO 准备备份数据库REM 7天一个循环IF EXIST %BACKPATH%\ONE GOTO ONEIF EXIST %BACKPATH%\TWO GOTO TWOIF EXIST %BACKPATH%\转载 2014-10-10 16:44:03 · 1643 阅读 · 0 评论 -
oracle 10g 创建JOB
oracle 10g 数据库10g schedule job的常用操作:-- job 权限 grant create job to somebody; -- job 创建 begin dbms_scheduler.create_job ( job_name => 'AGENT_LIQUIDATION_JOB', job_type => 'STORED_PROCEDU转载 2013-09-03 15:05:01 · 703 阅读 · 0 评论 -
Oracle 10g 异常处理
本人在做项目过程中,在存储过程中查询一张记录表,当查询不到任何结果时,会报错,SQL语句是这么写的:SELECT ID INTO id FROM table WHERE Name='aa';。经过百度查询相关资料,得知可以用exception NO_DATA_FOUND来进行异常处理,后来将SQL语句优化了下,如下:BEGIN SELECT ID INTO MsgId FROM原创 2013-09-03 14:15:32 · 509 阅读 · 0 评论 -
oracle 10g字符串分割处理
在做项目的过程中,遇到有这样的一个需求,需要对一个字符串进行分割处理,如:字符串:“1,2,3,4,5,”,需要得到结果:1 2 3 4 5。于是我就写了一个存储过程来实现,存储过程如下:CREATE OR REPLACE PROCEDURE T_MS_SplitString( t_Source IN VARCHAR2, --源字符串 t_Se原创 2013-09-03 12:09:33 · 815 阅读 · 0 评论 -
Oracle10g 日期格式转换(XXXX年XX月XX日)
将日期格式转换成:XXXX年XX月XX日SQL语句如下:select to_char(sysdate,'yyyy"年"mm"月"dd"日"') as s_date from dual原创 2013-09-03 14:19:47 · 6131 阅读 · 0 评论 -
Oracle 10g使用游标遍历表数据
Oracle 10g使用游标遍历表数据,代码如下:CREATE OR REPLACE PROCEDURE PRO_SENDMSGIS--创建游标,用于遍历单位表数据CURSOR MYCUS IS SELECT U.UNITINFO_ID,U.UNITINFO_NAME FROM T_ER_UNITINFO U WHERE U.UNITINFO_TYPE=13;原创 2013-09-03 14:04:33 · 1393 阅读 · 0 评论 -
Oracle的in和not in(图)
在很多软件系统中,系统的性能很打程度上有数据库的性能决定。以前也曾经做过很多次关于性能方面的各种测试,特别是关于oracle的,我想到也应该记录下来一部分,为大家共享。 事情发生在我们的系统从sqlserver移植到oracle,用户在一个查询的操作上等待的时间无法忍受了,我们关于这个查询的处理与原来的方式一下,难道sqlserver 同oracle有什么地方不一样么,让我们来看看o转载 2013-08-16 15:03:32 · 662 阅读 · 0 评论 -
ORACLE多表查询优化
ORACLE有个高速缓冲的概念,这个高速缓冲就是存放执行过的SQL语句,那oracle在执行sql语句的时候要做很多工作,例如解析sql语句,估算索引利用率,绑定变量,读取数据块等等这些操作。假设高速缓冲里已经存储了执行过的sql语句,那就直接匹配执行了,少了步骤,自然就快了,但是经过测试会发现高速缓冲只对简单的表起作用,多表的情况完全没有效果,例如在查询单表的时候那叫一个快,但是假设连接多个表,转载 2013-08-15 22:40:41 · 475 阅读 · 0 评论 -
oracle去掉表重复数据
今天在做项目过程中,碰到数据库表存在重复记录,显示的时候需要去掉重复的数据。想了老半天,最终用rank() over (partition by 分组字段 order by 排序字段 顺序)解决了此问题。 一、首先介绍下rank() over (partition by 分组字段 order by 排序字段 顺序): 语法: rank()原创 2013-07-19 15:57:07 · 714 阅读 · 0 评论 -
启动、禁用Oracle服务命令
1、启用Oracle服务 语法:net start 服务名称 例子:net start OracleServiceFYWORCL net start OracleDBConsoleFYWORCL net start OracleOraDb10g_home1iSQL*Plus翻译 2012-01-11 12:53:16 · 770 阅读 · 0 评论 -
Oracle数据库导出、导入命令
以下命令,详细用法可在“运行”中输入cmd进入命令窗口键入 :1、导出命令 导出整个库:exp 用户名/口令@数据库名 导出的文件存储路径, 例如:exp username/password@SID file=D:\test.dmp 导出库中的表:exp 用户名/口令@数据库名 导出的文件存翻译 2012-01-11 13:57:59 · 358 阅读 · 0 评论 -
Oracle 树操作(select…start with…connect by…prior)
oracle树查询的最重要的就是select…start with…connect by…prior语法了。依托于该语法,我们可以将一个表形结构的以树的顺序列出来。在下面列述了oracle中树型查询的常用查询方式以及经常使用的与树查询相关的oracle特性函数等,在这里只涉及到一张表中的树查询方式而不涉及多表中的关联等。1、准备测试表和测试数据1234转载 2016-01-07 16:58:36 · 395 阅读 · 0 评论