- 博客(22)
- 资源 (29)
- 收藏
- 关注
原创 建立和使用包含static方法的对象类型
*static方法:用于访问对象类型,因此不能访问self参数,只能由对象类型(obj_type)调用,而不能由实例(obj_instance)调用。在需要在对象类型上执行全局操作时使用。示例4:带static类型方法的对象操作--定义对象说明createorreplacetype person_obj2 asobject(namevarchar2(20),gender
2008-03-31 09:49:00 1041
原创 oracle对象类型的member方法
*:用于访问对象实例的数据。如果在对象类型中需要访问特定对象实例的数据,则需要定义member方法,member方法可以使用内置参数self访问当前实例对象,当定义member方法时,无论是否定义self参数,它都会被作为第一个参数传递给member方法,但如果定义参数self,那么其类型必须要使用当前对象类型。Member方法只能有对象实例调用,而不能被对象类型调用。示例3:带memb
2008-03-22 16:55:00 4381 1
原创 oracle简单对象类型
在plsql中,面向对象的程序设计是基于对象类型来完成的。对象类型是用户自定义的一种复合数据类型,它封装了数据结构和用于操纵这些数据结构的过程和函数,在建立复杂应用程序时,通过使用对象类型可以降低应用开发难度,进而提高应用开发的效率和速度。对象类型包括对象类型规范(object type specification)和对象类型体(object type body)两个部分。其中对象类型规
2008-03-22 11:15:00 2235
原创 oracle动态sql语句处理
动态SQL语句处理:根据要处理的sql语句的作用不同,可以使用三种不同类型的动态sql方法:使用execute immediate语句可以处理包括ddl(create、alter和drop)、DCL(grant、revoke)、DML(insert、update、delete)以及单行select语句;使用open cursorname for sql_statement语句可以处理多行查询
2008-03-22 09:53:00 9875 6
原创 Oracle导入excel数据方法汇总
Oracle导入excel数据方法汇总摘要:在程序编制过程和数据汇总交换过程中,经常会碰到需要将其他人员在office办公环境下编制的文件数据内容导入oracle中的情况。目前程序开发者经常使用的方法有如下几种:1,使用oracle提供的导入工具sql*loader;2,使用plsql developer工具;3使用其他数据转移工具做中转站。下面我们采用实例的方式分别描述几种导入方式的优
2008-03-21 17:34:00 33731 15
原创 oracle的系统事件触发器
oracle的系统事件触发器:系统事件触发器是指基于oracle系统事件(如logon和startup)所建立的触发器。通过这种触发器可以跟踪系统或数据库的变化。create table jax_event_table(eventname varchar2(30),time date);createtrigger tr_startupafter startup ondatabase
2008-03-20 15:58:00 5512 2
原创 触发器相关概念与应用
触发器是被隐含执行的存储过程,它可以使用PLSQL,java和c进行开发,它由触发事件、触发条件和触发操作三部分组成。*触发事件:从8i开始,oracle的触发事件扩充为:启动和关闭例程;oracle错误消息;用户登录和断开会话;特定表和视图的DML操作;在任何方案上的DDL语句。*触发条件(可选):when指定的一个boolean表达式,决定是否执行触发代码。*触发代码:触发代码不能
2008-03-20 12:03:00 2319
原创 程序包开发相关概念及其应用
包用于将oracle相关的嵌套表、record、varray、记录、游标以及子程序逻辑组合在一起的一种方法。它由包规范(package specification)和包体(package body)两部分组成,其中保规范实际是包与其他应用程序之间的接口,它用于定义包的公用组件,包括常量、变量、游标、过程和函数等;包体中定义的组件只能在包内使用。在user_source数据字典视图中可以查询得到
2008-03-20 10:03:00 1918
原创 oracle中与子程序(函数或过程)相关的几个视图
Q17,子程序(函数与过程)相关的系统视图:user_resource:保存子程序的源代码的系统视图。User_objects:存储当前用户的所有对象,包括过程、函数、表、视图以及索引等。User_errors:存储当前用户执行过程中曾经的出错代码及出错位置信息。User_dependencies:跟对象直接依赖的其他对象。Deptree/ideptree(直接依赖/间接
2008-03-19 17:44:00 1213
原创 oracle的异常处理
oracle提供了预定义例外、非预定义例外和自定义例外三种类型。其中预定义例外用于处理常见的oracle错误;非预定义例外用于处理预定义所不能处理的oracle错误;自定义例外处理与oracle错误无关的其他情况。Oracle代码编写过程中,如果捕捉例外则会在plsql块内解决运行错误,否则将错误传递到调用环境。*常用预定义例外:为了处理各种常见的oracle错误,plsql为开发人员提供
2008-03-19 15:36:00 4401 2
原创 oracle游标使用
Q15,oracle的游标使用:PL/SQL包含显式游标和隐式游标两种类型,其中隐式游标用于处理select into和DML语句,而显式游标则专门用于处理select语句返回的多行数据。使用显式游标包括定义游标、打开游标、提取游标和关闭游标四个阶段。其中提取游标在oracle9i之前只有一种方式fetch into,这种方式每次只能提取一行数据;从oracle9i开始,通过使用fetch…
2008-03-19 11:56:00 7487 1
原创 oracle批量绑定的概念
从oracle9i开始,oracle提供批量绑定关键词forall和bulk collect通过批量绑定技术,极大地加快了数据的处理速度。在不使用批量绑定的时候,为了将嵌套表中的数据插入数据库表中,需要循环执行insert语句,而使用forall关键词可以让所有插入内容集中在一次insert中执行,从而加快了执行速度。Bulk collect子句用于取得批量数据,该子句只能用于select语句、f
2008-03-18 20:33:00 3233
原创 使用集合操作符给嵌套表赋值
从oracle10g开始,允许将多个嵌套表的结果集合到某个嵌套表中(set,multiset union[distinct],multiset intersect,multiset except)。其中set有一个嵌套表传入参数,作用是消除嵌套表中的重复内容;multiset union是将两个嵌套表内容合并起来,加入关键词distinct可以消除重复内容;multiset interse
2008-03-18 16:59:00 1419
转载 oracle中的hash join详解
Q9,oracle中的hash join详解。作者: fuyuncat来源: www.HelloDBA.com 一、 hash join概念 hash join(HJ)是一种用于equi-join(而anti-join就是使用NOT IN时的join)的技术
2008-03-17 15:55:00 3240
转载 oracle执行计划的一些概念
oracle执行计划的一些概念:Rowid:系统给oracle数据的每行附加的一个伪列,包含数据表名称,数据库id,存储数据库id以及一个流水号等信息,rowid在行的生命周期内唯一。Recursive sql:为了执行用户语句,系统附加执行的额外操作语句,譬如对数据字典的维护等。Row source(行源):oracle执行步骤过程中,由上一个操作返回的符合条件的行的集合。
2008-03-17 15:54:00 1862
原创 oracle的层次查询
Q7,oracle层次查询:在业务执行过程中,如果涉及到的目标表具有层次结构数据,在传统的查询执行过程中,我们需要使用自连接来完成查询的执行,这样不仅代码书写比较麻烦,而且执行时的资源花销也比较大。Oracle提供了层次查询函数来优化这类查询要求。在层次查询中,伪列level可以用于返回层次,根层次为1,第二级层次为2,以此类推。层次查询子句的语法为Start with conditio
2008-03-17 15:52:00 2437
原创 oracle的复杂聚合函数
rollup、cube以及grouping sets统计关键字的使用:数据库的group by关键词执行对数据内容的聚合统计。select * from tsalary;1 1 10 开发 10000.002 2 10 测试 10000.003 3 10 管理 10000.004 4
2008-03-17 10:07:00 5332 2
原创 oracle的参照变量
Q4,oracle的参照变量:oracle中的参照变量有两种,ref cursor和ref obj_type。是指用于存放数值指针的变量。通过使用参照变量,可以使得应用程序共享相同对象,从而降低占用空间。Ref cursor:使用游标变量时不需要在定义时就指定相应的select语句,从而实现动态的游标操作。Declare Type c1_refcursor is ref curs
2008-03-15 10:51:00 1840 1
原创 oracle的多表插入
Q5,oracle的多表插入操作。在业务处理过程中,经常会碰到将业务数据按照条件分别插入不同的数据表的问题,按照传统的处理方式,需要分条件执行多次检索后分别插入不同的表单,这样因为执行了重复的检索造成cpu和内存的浪费,从oracle9i开始引入了insert all关键字支持将某张表的数据同时插入多张表单。语法如下:Insert all Insert_into_clause [valu
2008-03-15 10:48:00 4052
原创 oracle的异常处理函数
Q1:oracle用户自定义异常处理相关。A1:Exception_init编译指令,即exception的初始化。语法为pragma exception(exception_name,error_number)。在处理exception时,如果没有已经定义好的exception name可以使用,我们就只能用others来处理并捕捉所有的exception,PL/SQL设计者建议大家尽
2008-03-14 11:17:00 4010
原创 oracle的集合类型
Q7,从7.3版本之后,oracle的集合数据类型变为三种:Index_by表、嵌套表和Varray。这三种类型的集合相似点为:都是一维的类似数组的结构;都有内建的方法;访问由点分割。同时他们也存在很多差异,包括数据绑定、稀疏性(sparsity)和数据中的存储能力都不同。l 绑定涉及到集合中元素数量的限制:varray集合中的元素数量是有限的,不能超出其定义时给出的maxsi
2008-03-13 10:01:00 3414 1
原创 oracle9i客户端连接10g数据库
Q2:机器上原来安装了oracle9i的客户端,并配置了两个远程连接,但是由于远程数据库没有准备测试环境,所以又在本地装了10g的数据库服务器,在将监听服务器配置成功,并且使用telnet工具可以监听到数据库的情况下,原来可以连接oracle9i的plsql developer机器无法连接新配置的oracle10g数据库资源,连接时提示无法打开服务器。A2:这是由于没有在oracle9i
2008-03-13 09:59:00 7044 1
使用VMWare server在Oracle Enterprise Linux上安装Oracle RAC 10g(RAW磁盘管理方式)
2010-03-17
statspack完整使用手册
2009-12-11
oracle DBA 的职责
2009-08-15
cache buffers chain形成原因分析
2009-08-15
AIX系统CPU监控与评估
2009-08-14
AIX 系统交换磁盘空间的监控与管理
2009-08-14
AIX系统磁盘IO监控与评估
2009-08-14
一个释放临时表空间实例
2009-02-11
一个回滚段清理的实例
2009-02-11
Oracle的回滚段存储内容分析
2009-02-11
深入解析oracle的回滚段
2009-02-11
Oracle的列转行问题
2009-02-11
Oracle数据文件收缩实例
2009-02-11
Logminer应用实例
2009-02-11
从三个方面讲解如何适当优化sql
2008-12-03
索引监控设置及查看所有用户的unused indexes
2008-12-03
使用over函数实现递归汇总计算
2008-11-25
oracle的tuning技术总结
2008-11-24
oracle的10053事件
2008-11-24
trunc函数应用实例
2008-11-24
从执行计划和索引结构优化查询语句
2008-11-24
使用hint强制基于规则的查询优化
2008-11-24
Oracle中的package对象
2008-11-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人