Oracle
liangshaojun
这个作者很懒,什么都没留下…
展开
-
高效删除Oracle数据库中重复数据的方法
在对数据库进行操作过程中我们可能会遇到这种情况,表中的数据可能重复出现,使我们对数据库的操作过程中带来很多的不便,那么怎么删除这些重复没有用的数据呢? 重复数据删除技术可以提供更大的备份容量,实现更长时间的数据保留,还能实现备份数据的持续验证,提高数据恢复服务水平,方便实现数据容灾等。 重复的数据可能有这样两种情况,第一种时表中只有某些字段一样,第二种是两行记录完全一样。Oracl转载 2008-09-11 12:42:00 · 375 阅读 · 0 评论 -
Oracle语句优化30个规则详解(三)
21. 用EXISTS替换DISTINCT 当提交一个包含一对多表信息(比如部门表和雇员表)的查询时,避免在SELECT子句中使用DISTINCT. 一般可以考虑用EXIST替换 例如: 低效: SELECT DISTINCT DEPT_NO,DEPT_NAME FROM DEPT D,EMP E WHERE D.DEPT_NO转载 2008-09-11 13:45:00 · 360 阅读 · 0 评论 -
Oracle语句优化30个规则详解(二)
8. 使用DECODE函数来减少处理时间 使用DECODE函数可以避免重复扫描相同记录或重复连接相同的表。 例如: SELECT COUNT(*),SUM(SAL) FROM EMP WHERE DEPT_NO = 0020 AND ENAME LIKE ‘SMITH%’; SELECT COUNT(*),SUM(SAL)转载 2008-09-11 13:35:00 · 413 阅读 · 0 评论 -
Oracle语句优化30个规则详解(一)
1. 选用适合的Oracle优化器 Oracle的优化器共有3种: a. RULE (基于规则) b. COST (基于成本) c. CHOOSE (选择性) 设置缺省的优化器,可以通过对init.ora文件中OPTIMIZER_MODE参数的各种声明,如RULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . 你当然也在SQL句级或是会转载 2008-09-11 13:29:00 · 373 阅读 · 0 评论 -
Oracle 游标使用大全(一)
查询 SELECT语句用于从数据库中查询数据,当在PL/SQL中使用SELECT语句时,要与INTO子句一起使用,查询的返回值被赋予INTO子句中的变量,变量的声明是在DELCARE中。SELECT INTO语法如下: SELECT [DISTICT|ALL]{*|column[,column,...]} INTO (variable[,variable,...] |reco转载 2008-09-11 11:54:00 · 464 阅读 · 0 评论 -
Oracle 游标使用大全(二)
DML语句的结果 当执行一条DML语句后,DML语句的结果保存在四个游标属性中,这些属性用于控制程序流程或者了解程序的状态。当运行DML语句时,PL/SQL打开一个内建游标并处理结果,游标是维护查询结果的内存中的一个区域,游标在运行DML语句时打开,完成后关闭。隐式游标只使用SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT三个属性.SQL%FOUND,SQL转载 2008-09-11 12:06:00 · 492 阅读 · 0 评论 -
常用SQL语句详解
目前,人们对关系数据库做了大量的研究,并开发出关系数据语言,为操作关系数据库提供了方便的用户接口。关系数据语言目前有几十种,具有增加、删除、修改、查询、数据定义与控制等完整的数据库操作功能。通常把它们分为两类:关系代数类和关系演算类。 在这些语言中,结构化查询语言SQL以其强大的数据库操作功能、口语化、易学易用等特点,受到广泛的应用,成为数据库应用程序开发的一柄利剑。在数据库应用程转载 2008-09-11 13:03:00 · 299 阅读 · 0 评论 -
Oracle数据库的备份与恢复
当我们使用一个数据库时,总希望数据库的内容是可靠的、正确的,但由于计算机系统的故障(包括机器故障、介质故障、误操作等),数据库有时也可能遭到破坏,这时如何尽快恢复数据就成为当务之急。如果平时对数据库做了备份,那么此时恢复数据就显得很容易。由此可见,做好数据库的备份是多么的重要,下面笔者就以ORACLE为例,来讲述一下数据库的备份和恢复。ORACLE 数据库有三种标准的备份方法,它们分别为转载 2008-09-11 13:00:00 · 344 阅读 · 0 评论 -
Oracle的存储过程如何返回结果集
过程返回记录集: CREATE OR REPLACE PACKAGE pkg_test AS TYPE myrctype IS REF CURSOR; PROCEDURE get (p_id NUMBER, p_rc OUT myrctype); END pkg_test; / CREATE OR REPLACE PACKAGE BODY pkg_test AS转载 2008-09-11 12:38:00 · 446 阅读 · 1 评论 -
Oracle 游标使用大全(四)
在游标FOR循环中使用查询 在游标FOR循环中可以定义查询,由于没有显式声明所以游标没有名字,记录名通过游标查询来定义。 DECALRE v_tot_salary EMP.SALARY%TYPE; BEGIN FOR r_dept IN (SELECT deptno,dname FROM dept ORDER BY deptno) LOOP DBMS_转载 2008-09-11 12:16:00 · 392 阅读 · 2 评论 -
Oracle 游标使用大全(三)
记录变量 定义一个记录变量使用TYPE命令和%ROWTYPE,关于%ROWsTYPE的更多信息请参阅相关资料。记录变量用于从游标中提取数据行,当游标选择很多列的时候,那么使用记录比为每列声明一个变量要方便得多。当在表上使用%ROWTYPE并将从游标中取出的值放入记录中时,如果要选择表中所有列,那么在SELECT子句中使用*比将所有列名列出来要安全得多。 例: SET转载 2008-09-11 12:13:00 · 381 阅读 · 0 评论 -
Oracle SET命令参数详解
SQL*PLUS维护系统变量,也称SET变量,利用它可为SQL*PLUS交互建立一个特殊的环境,如:设置NUMBER数据的显示宽度;设置每页的行数;设置列的宽度等。可用SET命令改变这些系统变量,也可用SHOW命令列出它们.使用set命令的语法如下: SET 系统变量 值其中系统变量及其可选值如下: ARRAY[SIZE] {20(默认值)|n} AUTO[COM原创 2008-11-07 10:09:00 · 700 阅读 · 0 评论